记Handler机制中的一个小点
2015-06-08 13:37
190 查看
众所周知,handler是一个消息机制,完善线程安全。
hander的基本用法就不在详细说明了,以下写出几个自己容易忽略的小点。
1.handler需要绑定一个looper
2.handler机制在主线成中用new定义时 ,自动绑定主线程的looper。
3.非主线程创建handler,需要手动开启looper(looper。prepare()----looper.loop),进行绑定,或者通过Looper.getMainLooper(),获得主线程的Looper。进行绑定。
4.子线程不能进行UI 更新。
5.使用post()将线程对象放到消息队列中后,当Looper轮询到该线程执行时,实际上并不会单独开启一个新线程,而仍然在当前Looper绑定的线程中执行,Handler只是调用了该线程对象的run()而已
hander的基本用法就不在详细说明了,以下写出几个自己容易忽略的小点。
1.handler需要绑定一个looper
2.handler机制在主线成中用new定义时 ,自动绑定主线程的looper。
3.非主线程创建handler,需要手动开启looper(looper。prepare()----looper.loop),进行绑定,或者通过Looper.getMainLooper(),获得主线程的Looper。进行绑定。
4.子线程不能进行UI 更新。
5.使用post()将线程对象放到消息队列中后,当Looper轮询到该线程执行时,实际上并不会单独开启一个新线程,而仍然在当前Looper绑定的线程中执行,Handler只是调用了该线程对象的run()而已
相关文章推荐
- Ngnix 安装、信号量、虚拟主机配置
- Rectangle Area || LeetCode
- ndk入门基础demo
- OpenVSwitch简单容易入门
- jquery-validation 使用
- Android LinearLayout中TextView标签项自动换行的一种解决方案
- CVPR2014 Objectness 源码转换(完整版) VS2012 X64 –>win32
- OSG 自定义数据类型 关键帧动画
- Mega Dropdown - 带子分类的响应式下拉菜单
- Oracle索引
- Ubuntu中jdk的安装与配置
- Fibonacci Again
- Spark1.2集群环境搭建(Standalone+HA) 4G内存5个节点也是蛮拼的
- POJ2417 Discrete Logging 解高次同余方程
- 不错的Openstack架构介绍
- WordPress前台后台页面打开慢的解决方法
- GRE写作经典的句子总结
- SAT写作范文赏析(OG题目大全)(7)
- .net(C#)访问Oracle数据库的几种免安装组件的对比
- 三年Android 开发习惯