Android中Handler、Looper、Message、MessageQueue详解

xiaoxiao2021-02-28  72

概述:  

很多android初学者对android 中的handler不是很明白,其实Google参考了Windows的消息处理机制,

在Android系统中实现了一套类似的消息处理机制。在下面介绍handler机制前,首先得了解以下几个概念:

1. Message 消息,理解为线程间通讯的数据单元。例如后台线程在处理数据完毕后需要更新UI,则可发送一条包含更新信息的Message给UI线程。 2. Message Queue 消息队列,用来存放通过Handler发布的消息,按照先进先出执行。 3. Handler Handler是Message的主要处理者,负责将Message添加到消息队列以及对消息队列中的Message进行处理。 4. Looper 循环器,扮演Message Queue和Handler之间桥梁的角色,循环取出Message Queue里面的Message,并交付给相应的Handler进行处理。 5. 线程 UI thread 通常就是main thread,而Android启动程序时会替它建立一个Message Queue。

每一个线程里可含有一个Looper对象以及一个MessageQueue数据结构。在你的应用程序里,可以定义Handler的子类别来接收Looper所送出的消息。

下面是正文 开始~

参考范文https://luhaoaimama1.github.io/2017/03/15/Handler|Looper|Message|MessageQueue/

转载请注明原文地址: https://www.6miu.com/read-77676.html

最新回复(0)