什么时候使用多线程:1. 耗时操作使用多线程, 耗时操作放在UI线程中会导致用户的操作无法得到响应.2. 阻塞操作使用多线程, 理由同上.3. 多核CUP的设备使用多线程, 可以有效提高CPU的利用率.4. 并行操作使用多线程.android中的多线程模型主要涉及的类有:Looper, Handle...
分类:
移动开发 时间:
2014-07-05 17:22:42
阅读次数:
341
一、Handler的定义: 主要接受子线程发送的数据, 并用此数据配合主线程更新UI. 解释: 当应用程序启动时,Android首先会开启一个主线程 (也就是UI线程) , 主线程为管理界面中的UI控件,进行事件分发, 比如说, 你要是点击一个 Button ,Android会分发事...
分类:
移动开发 时间:
2014-07-03 10:48:50
阅读次数:
184
Android UI操作并不是线程安全的并且这些操作必须在UI线程中执行。Android利用Handler来实现UI线程的更新的。
Handler是Android中的消息发送器,其在哪个Activity中创建就属于且紧紧属于该Activity。还可以说其在哪个线程中new的,就是那个线程的Handler。
Handler的定义: 主要接受子线程发送的数据, 并用此数据配合主线程更新UI...
分类:
移动开发 时间:
2014-07-02 08:42:18
阅读次数:
340
UI线程及Android的单线程模型原则 当应用启动,系统会创建一个主线程(main thread)。 这个主线程负责向UI组件分发事件(包括绘制事件),也是在这个主线程里,你的应用和Android的UI组件(components from the Android UI toolkit (com.....
分类:
移动开发 时间:
2014-07-01 23:48:25
阅读次数:
254
Android考虑到线程安全问题,不允许在线程中执行UI线程,在Android中,有一个类:android.os.Handler,这个可以实现各处线程间的消息传递。先看段代码,这个实例化了一个Handler,Handler可以通过Message在多个线程通讯,这里做的是定时recLen加1,然后以一...
分类:
移动开发 时间:
2014-07-01 20:17:50
阅读次数:
312
AsyncTask介绍Android的AsyncTask比Handler更轻量级一些,适用于简单的异步处理。首先明确Android之所以有Handler和AsyncTask,都是为了不阻塞主线程(UI线程),且UI的更新只能在主线程中完成,因此异步处理是不可避免的。Android为了降低这个开发难度...
分类:
编程语言 时间:
2014-07-01 16:37:52
阅读次数:
174
工作中经常会用到跨线程访问UI控件的情况,由于.net本身机制,是不允许在非UI线程访问UI控件的,实际上跨线程访问UI控件还是 将访问UI的操作交给UI线程来处理的,利用Control.Invoke方法,将操作传递给UI线程,不推荐使用CheckForIllegalCrossThreadCalls...
分类:
编程语言 时间:
2014-06-28 18:25:42
阅读次数:
252
查View的源码可知:
postInvalidate是使用handler发送消息,即可以使用在非UI线程中,而invalidate直接修改布局,所以只能用在UI线程里了。
public void invalidate() {
invalidate(true);
}
void invalidate(boolean invalidateCa...
分类:
其他好文 时间:
2014-06-27 23:39:04
阅读次数:
256
整理Android Asynchronous Http Client的使用
Android Asynchronous Http Client(AHC)
一个回调式的Android网络请求库
概括:
AHC是基于Apache的HttpClient 库,所有的网络请求过程在UI线程之外进行,而回调是在Handler里面处理。也可以再Service或者后台程序里面使用,这个库会自...
分类:
移动开发 时间:
2014-06-27 10:06:19
阅读次数:
308
1. 什么是Handler:
Handler 网络释义“操纵者,管理者的”意思,在Android里面用于管理多线程对UI的操作;
2. 为什么会出现Handler:
在Android的设计机制里面,只允许主线程(一个程序第一次启动时所移动的线程,因为此线程主要是完成对UI相关事件的处理,所以也称UI线程)
对UI进行修改等操作,这是一种规则的简化,之所以这样简化是因为Android的UI操...
分类:
移动开发 时间:
2014-06-27 09:50:16
阅读次数:
268