Handler使用流程介绍
Handler介绍
Handler是一个线程,主要用于异步消息的处理,这种机制通常用来处理相对耗时比较长的操作。
Handler 工作原理
通过sendMessageAtTime发出一个消息(message)之后,通过enqueueMessage添加消息(message)到队列中(MessageQueue),然后在Looper中将消息(
message)取出(具体操作在loop方法),然后调用dispatchMessage将消息(message)抛给handlerMessage对消息(message)进行处理。
Handler的工作过程中与Message、MessageQueue、Looper的关系,以及它们扮演的角色
- Message
Message是一个消息载体对象 - MessageQueue
MessageQueue是一个队列(先进先出),管理着Message。 - Looper
Looper是一个操作工,取出MessageQueue中的Message。