天天看点

Handler消息机制 笔记

这是笔记,没有源码分析和详细过程,只有自己总结出来的重点,源码分析看参考资料,前辈写的很好。

Handler消息机制 笔记

一个线程,一个Looper,一个MessageQueue,多个Handler

MessageQueue单链表结构

使用ThreadLocal机制保证一个线程一个Looper:https://www.cnblogs.com/--here--gold--you--want/p/15730088.html

记得在子线程中调用Looper.prepare创建Looper,调用Looper.loop()开始循环,调用Looper.quie()结束循环

Android主线程的Looper不用prepare,在ActivityThread就已经创建好了。

因为Looper.loop()是在子线程中调用,所以Handler的处理逻辑也就在子线程中进行了。

参考资料:

Android开发艺术探索:https://www.kancloud.cn/alex_wsc/android_art/1828638

面试:https://www2.imgeek.org/article/825358871