1. 定义
一套 Android
消息传递机制
2. 作用
在多线程的应用场景中,将工作线程中需更新UI
的操作信息 传递到 UI
主线程,从而实现工作线程对UI的更新处理,最终实现异步消息的处理:
3. 为什么要用 Handler消息传递机制
- 答:多个线程并发更新UI的同时保证线程安全
- 具体描述如下
4. 相关概念
关于 Handler
机制中的相关概念如下:
在下面的讲解中,我将直接使用英文名讲解,即
Handler
、Message
、MessageQueue
、Looper
,希望大家先熟悉相关概念
5. 工作原理 解析
下面,我将定性地讲解Handler
机制的工作流程
5.1 工作流程解析
Handler
机制的工作流程主要包括4个步骤:
- 异步通信准备
- 消息发送
- 消息循环
- 消息处理
具体如下图:
5.2 工作流程图
5.3 示意图
5.4 特别注意
线程(Thread
)、循环器(Looper
)、处理者(Handler
)之间的对应关系如下:
- 1个线程(
Thread
)只能绑定 1个循环器(Looper
),但可以有多个处理者(Handler
) - 1个循环器(
Looper
) 可绑定多个处理者(Handler
) - 1个处理者(
Handler
) 只能绑定1个循环器(Looper
)
至此,关于Handler
的异步消息传递机制的工作原理讲解完毕。