handler以及handleThread相关的资识

handler简介

handler是android中异步消息处理机制 ,handler里有一个looper对象用来去轮询handler的任务, 通过其构造方法可以去指定 new Handler(looper对象)  looper在什么线程里创建的其handmessage方法就会到什么线程去执行, 主线程不用系统会默认去创建looper , 非主线程需要去手动创建


一般是用于在子线程里去 发送消息给主线程去更新 ui

handlerThread简介

这个类是一般是用于 主线程去通过子线程去干一些耗时的操作 其父类是Thread类
基本用法
将实例化后的handlerThread类的looper对象传给 一个新的handler对象,然后这个新的handdler对象的handemessage方法就执行在子线程了
注意: getLooper方法里返回的looper对象是在子线程里去实例化的 所以在new Handler()构造里传值的时候可能会为空,所以其getLooper方法里做了一个同步的操作


getLooper里作的操作 
1.先判断这个线程是否还活着
2.如果run方法还没有被执行时 就睡眠线程在此处


run方法主要干的一些事
1.给mLooper成员变量赋值
2.赋值成功后 唤醒线程 成功返回mLooper对象


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值