Android Hander 在主线程中的使用逻辑

在Android 应用中,主线程是一个特殊的存在,当主线程起来的时候,它默认就会创建一个Looper, 用以同步各种线程任务。

)Hander的基础知识:
Hander 机制:是一个多线程异步交流的同步机制。
工作中常见的用途:
(1)在子线程中如何更新UI, 使用主线程的Looper 完成同步。
(2)在子线程中同步消息的处理顺序。
(3) 触发延迟操作。
原理:
(1) Looper 中创建了一个序列(链表结构),用来保存各种需要处理的Message.
      Looper中存在一个消息循环,不断的从消息队列里面取出消息然后执行。
(2)Hander 用后这个Looper 的引用,可以通过它往这个序列里添加消息。
(3)Looper和某个线程是通过ThreadLocal 变量绑定在一起的。
(4)处理消息是通过Message 里面的hander 来处理消息的。
(5)Looper.run 在那个线程中运行,handleMessage 就在此线程中运行。

(二)Looper 在主线程的创建逻辑

首先:APP 应用主线程或者UI 线程起来,在main方法中PrepareMainLooper.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值