handler小结

一、Handler 是用来干嘛的?

1)线程间通信。

2)执行计划任务,可以在预定时间执行某些任务,可以模拟定时器。

二、相关概念

1)Looper:一个线程可以产生一个Looper对象,由它来管理线程里的MessageQueue

2)Handler:可以构造Handler对象来与Looper沟通,以便push新消息到MessageQueue里,或者接受Looper从MessageQueue里送来的消息。

3)MessageQueue(消息队列):是用来存放线程放入的消息。

三、Handler执行的过程

在android的应用启动时,会创建一个主线程,UI主线程初始化第一个Handler时,会通过ThreadLocal创建Looper,

该Looper与主线程一一对应。Looper初始化的时候会创建消息队列MessageQueue。

一个Handler对象只能和一个线程关联。这个线程就是创造它的线程。子线程可以通过Handler将消息发送到UI线程

的消息队列中。

UI线程调用Handler处理消息。

Handler有更方便的方法可以帮助与UI线程通信,只是简单往消息队列中发送消息而已。





你可能感兴趣的:(handler小结)