谈谈对Android中的消息机制的理解
来源:互联网 发布:淘宝购物车营销不见了 编辑:程序博客网 时间:2024/06/06 15:52
谈谈对Android中的消息机制的理解
Android中的消息机制主要由Handler、MessageQueue、Looper三个类组成,他们的主要作用是
- Handler负责发送、处理Message
- MessageQueue负责维护Message队列
- Looper负责Message的轮询
Android的消息机制主要是为了在子线程中处理的数据可以在主线程更新UI,完成从子线程到主线程的切换。
而Android的单线程UI模型,则是为了简化UI操作,防止在多线程情况下同时更新UI造成的同步操作和效率问题。
与这种消息机制相关的类还有HandlerThread、IntentService。
HandlerThread内部维护着Handler和消息循环,需要手动退出Looper才会退出循环。
而IntentService内部则维护着HandlerThread和Handler,发送到IntentService的任务会被Handler发送到HandlerThread中执行。
如果要使用Handler,比如在线程中开启Looper才可以,在主线程默认可以使用Handler,是因为在ActivityThread.main()中自动开启了Looper,所以如果在子线程中使用Handler需要
Looper.preper(); ......Looper.loop();
另外,使用任何与这种消息机制相关的方法发送一个Runnable对象,都不是开启新线程执行,而只是为了使用Runnable.run()。比如
Handler.post(Runnable);View.post(Runnable);
阅读全文
0 0
- 谈谈对Android中的消息机制的理解
- 谈谈我对Android中的消息机制的理解之Handler,Looper和MessageQueue的解释
- 谈谈对handler,Looper,Message的android消息处理机制
- 谈谈对iOS消息的理解
- 谈谈对android的理解
- 由VCL中的代码理解VCL中的消息处理机制(Delphi对消息机的封装)
- 由VCL中的代码理解VCL中的消息处理机制(Delphi对消息机的封装)
- Android消息机制的理解
- 谈谈你对Android NDK的理解
- 对Handler消息机制的理解
- 对windows消息机制的理解
- 谈谈对代理,block,消息通知的理解
- android消息机制理解
- Android有关消息机制的理解
- Android 消息机制的一点理解
- Android Handler消息机制的理解
- Android Handler消息机制的理解
- 对android消息机制的总结
- Linux下openldap的配置的访问
- C#利用反射,遍历获得一个类的所有属性名,以及该类的实例的所有属性的值
- 关于echarts的饼状体
- c#网络编程学习的几个链接
- Cisco VPP(1) 简介
- 谈谈对Android中的消息机制的理解
- GMT5SAR--由*.grd文件生成*.ps
- activeMQ问题一初识界面
- scrapy+python爬地图参照物应该有的坑及解决办法
- Android_Sqlbrite入门使用
- Windows下SVN提交模板制作及应用
- Chapter 3
- 集合
- 深入Java虚拟机视频教程(圣思堂)--学习笔记