在上一篇博文中,我们讲解了如何实现Android的多线程下载功能,通过将整个文件分成多个数据块,开启多个线程,让每个线程分别下载一个相应的数据块来实现多线程下载的功能。多线程下载中,可以将下载这个耗时的操作放在子线程中执行,即不阻塞主线程,又符合Android开发的设计规范。
但是当下载的过程当中突然出现手机卡死,或者网络中断,手机电量不足关机的现象,这时,当手机可以正常使用后,如果重新下载文件...
分类:
移动开发 时间:
2015-07-15 22:51:28
阅读次数:
351
进程:执行中的程序,一个进程可以包含一个或多个线程,一个进程至少包含一个线程线程:依靠程序进行运行,只能使用分配给程序的资源和环境单线程:程序中只存在一个线程,实际主方法就是一个主线程多线程:多线程是在一个程序中运行多个任务,目的是更好的使用CPU资源线程的2中实现: 1、继承Thread类 ...
分类:
编程语言 时间:
2015-07-15 19:12:02
阅读次数:
137
Java-多线程基本
一 相关的概念
进程:是一个正在执行中的程序
每一个进程都有一个执行的顺序,该顺序是一个执行路径,或者叫一个控制单元线程:就是进程中的一个独立的控制单元,线程在控制着进程的执行注意 :
一个进程至少有一个线程Java VM启动的时候会有一个进程java.exe
该进程中至少一个线程负责java程序的执行,而且这个线程运行的代码在main方法中
该线程称为主线程JVM...
分类:
编程语言 时间:
2015-07-15 09:26:41
阅读次数:
157
第6 章 Java线程及多线程技术及应用
6.1线程基本概念
1、进程和线程的基础知识
l 进程:运行中的应用程序称为进程,拥有系统资源(cpu、内存)
l 线程:进程中的一段代码,一个进程中可以哦有多段代码。本身不拥有资源(共享所在进程的资源)
在java中,程序入口被自动创建为主线程,在主线程中可以创建多个子线程。
区别: 1、是否占有资源问题
2、创建或撤销一个进...
分类:
编程语言 时间:
2015-07-15 08:08:55
阅读次数:
191
前言
每个iOS应用程序都有个专门用来更新显示UI界面、处理用户触摸事件的主线程,因此不能将其他太耗时的操作放在主线程中执行,不然会造成主线程堵塞(出现卡机现象),带来极坏的用户体验。一般的解决方案就是将那些耗时的操作放到另外一个线程中去执行,多线程编程是防止主线程堵塞,增加运行效率的最佳方法。
iOS中有3种常见的多线程编程方法:
1.NSThread
这种方法需要管理线...
分类:
编程语言 时间:
2015-07-14 10:05:05
阅读次数:
131
对于客户端来说,好的用户体验,需要保持一个快速响应的用户界面。于是便要求:网络请求、io操作等 开销比较大的操作必须在后台线程进行,从而避免主线程的ui卡顿。(注:协程也是主线程的一部分,进行大量的io操作也会造成UI卡顿)在 WPF 中,DispatcherObject只能通过与它关联的Dispa...
分类:
编程语言 时间:
2015-07-13 23:46:23
阅读次数:
707
一、Handler的定义:Handler主要接收子线程发送的数据, 并用此数据配合主线程更新UI,用来跟UI主线程交互用。比如可以用handler发送一个message,然后在handler的线程中来接收、处理该消息,以避免直接在UI主线程中处理事务导致影响UI主线程的其他处理工作,Android提...
分类:
移动开发 时间:
2015-07-13 18:19:53
阅读次数:
126
做了也快2年的android了,发现android的机制还不是很了解,这几天看了一下这方面的介绍,总结一下handler的用法和机制。handler就是用来线程之间通信的,主线程与子线程。一般的用法是,子线程通知ui主线程的handler去刷新ui操作。最近遇到一些人,问能不能主线程去通知子线程的h...
分类:
其他好文 时间:
2015-07-13 00:41:03
阅读次数:
131
翻译自http://www.androiddesignpatterns.com/2013/01/inner-class-handler-memory-leak.html在主线程中使用Handler对象,比如下面的代码public class SampleActivity extends Activi...
分类:
其他好文 时间:
2015-07-12 16:59:53
阅读次数:
378
===================疑问:1、coredata是什么?结构2、如果在简单的demo中,我们可以在主线程中使用coredata。但是如果在真正的大项目中,这样可行么?3、假设都在主线程,那么我们的项目中有很多模块也要进行存放。那么我们的代码该如何组织,使全部模块用一个数据库多张表?还...
分类:
编程语言 时间:
2015-07-12 14:08:58
阅读次数:
127