复习-handler机制

本文重新回顾Android的Handler机制,结合源码加深理解。Handler多用于主线程和子线程通信,子线程通过它给主线程发消息以修改UI。其机制实现依赖Looper、Message等,消息会添加到MessageQueue,Looper循环从队列取消息,取消息时线程阻塞以节省CPU资源。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

重新回顾handler机制,结合源码加深理解。

涉及:handler,looper,messagequeue,message。

面试:Handler机制的原理,内部是如何实现的?

答:Android中的handler多用于主线程 和 子线程之间通信,比如在Android中子线程是不允许修改UI的,只能让子线程通过handler给主线程发消息,主线程来修改UI。Handler整个机制的实现,还依赖Looper、Message两个核心内容。在主线程中Android默认给我们创建了Looper,当我们通过handler.sendMessage后,该消息被添加到MessageQueue中,Looper.loop中有个while(true)的循环不停的从消息队列中取消息。去消息的过程是线程阻塞的,这样不至于在没有消息的时候过多的耗费CPU资源。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值