android的消息处理机制(图文+源码分析)—Looper/Handler/Message

 
1.Message 消息事件 一般通过Message.obtain(); 来获得
 2.MessageQueue 一个消息队列 先进先出 每个looper线程都有一个messageQueue对象
 3.Looper 
 每个线程都只能产生一个looper对象 通过looper.prepare方法把一个线程转化成一个looper线程
 当创建looper对象是会创建一个MessageQueue对象
 通过looper.loop方法关联这个messageQueue 对象
 并开始分发messageQueue中的message事件
 4.handler 异步处理大师
 handler在创建时会关联到当前的looper线程(一个线程可以有多个handler ) 也关联到该looper的messageQueue对象
 handler可以向MessageQueue提交一个message消息 并且设置该message的target属性为自身
 当looper.loop执行的时候 会根据messageQueue的message的target属性来分发事件到对应的handler去处理
 handler调用handleMessage来处理事件
 可以通过重写handler的handleMessage来执行自己想要的逻辑
 


详细分析请看:http://www.jb51.net/article/33514.htm
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值