image

编辑人: 沉寂于曾经

calendar2025-07-21

message6

visits291

介绍一下Handler和HandlerThread的作用和用法

Handler

Handler创建的那个线程会在构造函数里面调Looper.myLooper().然后会在Threadlocal里面找到当前线程的looper产生关联.

MessageQueue一个looper对应一个,looper在构造函数里面创建MessageQueue.

looper调用了looper就会循环在Message里面取消息

handler发送Message,massage的target会设置为发送它的handler,然后放进Messagequeue.最后被queue创建的线程的looper取出分发给handler的handlemessage()方法.

HandlerThread

HandlerThread的getLooper()方法保证一定可以拿到非空返回值.如果Looper还没创建就一直wait()

可以防止像子线程发消息的时候,子线程的handler创建的代码还没执行的情况.保证一定可以收到消息

喵呜刷题:让学习像火箭一样快速,快来微信扫码,体验免费刷题服务,开启你的学习加速器!

创作类型:
原创

本文链接:介绍一下Handler和HandlerThread的作用和用法

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。
分享文章
share