Android消息机制:
先来看一张关于整个消息机制的描述图,这个流程会在之后自己从0开始手写实现的,如下:
以上模型大致解释一下:
1、以Handler的sendMessage方法为例,当发送一个消息后,会将此消息加入消息队列MessageQueue中。
2、Looper负责去遍历消息队列并且将队列中的消息分发给对应的Handler进行处理。
3、在Handler的handleMessage方法中处理该消息,这就完成了一个消息的发送和处理过程。
这里从图中可以看到参与消息处理有四个对象,它们分别是 Handler, Message, MessageQueue,Looper。
其中在图中涉及到这两个状态:
这个在之后的源码分析中是能看到的。
ThreadLocal的工作原理:
ThreadLocal 是一个线程内部的数据存储类,通过它可以在指定的线程中存储数据,数据存储以后,只有再指定线程中可以获取到存储的数据,对于其他线