Android Handler 机制

本文介绍了Android Handler机制,它用于消息传递和处理。Handler与特定线程及其消息队列相关联,通过Looper处理消息和Runnable对象。Handler的主要作用是安排消息或Runnable在将来执行,以及在不同线程间进行通信。通过postXxx和sendMessageXxx方法,可以实现消息调度和延迟执行。HandlerThread、Looper、Runnable、Message和Messenger等概念将在后续内容中进一步探讨。
摘要由CSDN通过智能技术生成

Android Handler 机制

Handler 与消息的传递和处理有关。

Handler 可以用来发送和处理消息,有专门的 Message 类构建消息,还可以通过线程的消息队列处理 Runnable 对象,而 Runnable 对象就是一个子线程,所以 Handler 的用处真是太大了。

每一个 Handler 实例会和一个单一的线程以及线程的消息队列关联,创建的 Handler 对象会绑定一个 Looper 对象,Looper 可以理解为一个循环者,处理 Handler 传递过来的消息和 Runnable 对象。消息队列和线程就是属于 Looper 的,所以 Handler 实际上是和 Looper 的消息队列和线程关联。

Handler 有两个主要作用:

  1. 安排消息或 Runnable 对象在将来的某个时间点被执行

  2. 把一个动作入队到不同于当前线程的子线程

我们可以用

post(Runnable)
postAtTime(java.lang.Runnable, long)
postDelayed(Runnable, Object, long)
sendEmptyMessage(int)
sendMessage(Message)
sendMessageAtTime(Message, long)
sendMessageDelayed(Message, long)

这些方法完成消息的调度和安排。postXxx 方法把 Runnable 对象推入消息队列,当消息队列接收到他们的时候就去调用或执行,sendMessageXxx 方法把封装了一捆数据的 Message 对象推入消息队列,通过 Handler 对象的 handleMessage(Message) 方法处理他们,该方法需要在创建

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值