Android学习笔记——Handler消息分发
来源:互联网 发布:久其通用数据平台 编辑:程序博客网 时间:2024/06/15 12:31
Handler 消息分发
Handler事件分发机制是 基于生产者/消费者模型,使用Linux下的pipe(管道)实现的,读取和写入相互协调实现等待/通知。Handler机制是用于处理线程间消息分发的。
主要角色:
Handler(事件处理)、MessageQueue(消息队列)、Looper(消息循环)。
一个线程下可以有多个Handle,但只能拥有一个MessageQueue和一个Looper;每个Handle可以定义处理一类消息。
角色职责:
Handler:事件的分发和处理。将事件分发至该Handle所在线程下的消息队列;处理发送至该Handle所在线程并且递交给当前Handle的消息;Handler中含有MessageQueue和Looper的引用,含有Looper引用是为了表示该Handler所对应的Looper,从而关联MessageQueue 以便向MessageQueue中获取消息;
MessageQueue:消息对象的存储,入队和出队。消息对象里携带了该消息所对应的目标Handler,用于分发过程中标示信息传递终点。
- Looper:消息的循环,不断监听MessageQueue队列,从队列中取出消息发送至相应的目标Hander。Looper中含有Thread 和MessageQueue的引用。Thread、MessageQueue引用是在prepare时完成,标识该消息循环的线程和其消息队列。 一旦prepare完成,即调用loop函数,进入消息循环过程,取出队列中的消息发送至目标Handler。
消息分发流程图
0 0
- Android学习笔记——Handler消息分发
- 2.26学习笔记 android事件分发,handler内存泄露
- Android学习笔记——Handler
- android学习笔记——Handler
- Android学习笔记 — Handler小解
- android学习之——Handler消息传递机制
- 学习总结——android的消息机制handler
- Android学习笔记:Android消息处理机制之Handler介绍
- Handler消息传递学习笔记
- 学习笔记-Handler消息机制
- android学习笔记(七):Handler消息传递机制
- Android学习笔记(38):Handler消息传递处理机制
- 学习笔记:android中Handler异步消息处理机制
- 【Android学习】消息机制Handler
- Android学习笔记——View事件分发(上)
- Android学习笔记——触摸事件分发
- Android学习—— Handler 的消息发送,在新的线程处理消息
- Android学习笔记--Handler消息传递机制(Handler实现自动播放动画)
- Web应用启动时,后台自动启动一个线程
- 二进制 原码、反码、补码
- Mysql优化
- POJ3685 二分求第k小的值
- sort和qsort排序
- Android学习笔记——Handler消息分发
- 织梦dedecms生成栏目HTML缓慢的一个可能原因及解决方法
- Assets文件下文件读取方式
- MySql查询优化,高并发控制
- hdu 5738 多校2 Eureka 【几何计数】
- Android 获取设备常用信息 (app版本信息 签名信息)
- Netty解决半包(TCP粘包/拆包导致)读写问题
- fontspider--字蛛的使用
- 大话设计模式13----建造者模式