Handler体系以及原理

来源:互联网 发布:js有没有boolean 编辑:程序博客网 时间:2024/06/16 11:58

Handler体系以及原理

体系成员

Handler

与Looper进行沟通,获得其中的消息,并完成消息的具体处理

Looper

Looper实现对消息队列的管理,一个线程只可有一个Looper

MessageQueue

用于管理Message的消息队列

Message

用于存储消息的具体信息

基本流程

文字描述

为了方便理解,我们假设是在主线程中使用的Handler
(1)首先我们在主线程中 newHandler 绑定到了主线程中的Looper
(2)post出去的消息也就发到了UI线程中Looper的消息队列中
(3)Looper循环处理Message中的消息其实是回调了 Handler中的处理方法
(4)同时Looper是在它绑定的的线程里执行处理方法的,其实就相当于在UI线程中执行了处理代码,也就可以更新UI了。

图片

基本流程

原创粉丝点击