打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
handler msg mqueue looper之间关系

 
一般情况下,在一个线程创建时他本身是不会生产他特定单一的looper的(主线程是个特例)。因此我们需要手动的把一个looper与线程相关联。其方法只需在需要关联的looper的线程中调用Looper.prepare。之后我们再调用Looper.loop启动looper。

创建handler的时候,我们需要与特定的looper绑定。这样通过handler我们就可以把message传递给特定的looper,继而传递给特定的线程。线程所需要做出何种响应需要我们在我们自定义的handler类中的handleMessage重构方法中编写。
looper和handler并非一一对应的。一个looper可以对应多个handler,而一个handler只能对应一个looper.


虽然我们可以自己创建一个新的message,
但是更加推荐的是调用handler的obtainMessage方法来获取一个message。
这个方法的作用是从系统的消息池中取出一个message,这样就可以避免message创建和销毁带来的资源浪费了。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Message、Handler、MessageQueue、Looper之间的关系
Android 之 handler 学习 1
Android的线程使用来更新UI
Android中的Handler, Looper, MessageQueue和Thread...
android消息机制 之Handler
深入剖析Android消息机制
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服