Handler源码分析-手把手带你实现Handler机制核心架构

什么是Handler
安卓SDK中用来处理异步消息的核心类
子线程可以通过Handler来通知主线程进行UI更新

Handler机制核心类
Handler Looper Message MessageQueue

Message:
在整个消息处理机制中,Message又叫Task,封装了任务携带的信息和处理该任务的Handler。有这么几点需要注意:
(1)、尽管Message有public的默认构造方法,但是你应该通过Message.obtain()来从消息中获得空消息对象。以节省资源。
(2)、Message如果只需要携带简单的int信息,请优先使用arg1和arg2来传递信息,这比用Bundle更省内存。

Looper--轮询器

MessageQueue(消息队列)

(入队)
Handler.sendMessage->queue.enqueueMessage

(出队)
Looper.loop->queue.next

demo:https://github.com/ApeCold/Learn_Handler_Demo

你可能感兴趣的:(Handler源码分析-手把手带你实现Handler机制核心架构)