消息机制
Handler机制
Message,理解为线程间交流的信息
Handler,是Message的主要处理者,负责Message的发送和执行处理
Message Queue,用来存放通过Handler发布的消息,按照先进先出执行
Looper ,是每条线程里的Message Queue的管家
Handler一般在主线程中创建,子线程通过处理器对象的sendMessage发消息到MessageQueue(消息队列)里,主线程中已经包含了一个Looper(轮循器),Looper是死循环的,会一直轮询消息队列,看是否有Message(消息) ,如果有,轮询器会把消息对象传给Handler(消息处理器),然后调用handlerMessage处理该消息,进而更新UI。
子线程如何使用handler
子线程没有Looper对象,需要我们自己维护。Looper.prepare()初始化Looper对象,Looper.loop()将Looper对象运行起来。
Android线程
主线程子线程
AsyncTask
HandlerThread
IntentService
Android线程池
ThreadPoolExecutor
重点内容