Handler
1 handler主要处理两种对象。
一是Message对象,一是Runable对象。
实际上Runable对象也会获得一个Message对象。
2 每个handler对象同当前所在的线程和消息队列绑定。
handler对象从消息队列中获得Message,后者向消息队列中发送Message。
3 handler主要有两类方法。
一类是post开头的,主要向消息队列中传递Runable对象。
一类是sendMessage,主要向消息队列传递Message对象。
扫描二维码关注公众号,回复:
581052 查看本文章
4 handler线程间通信。
主线程创建一个handler对象。那么主线程的消息队列就与这个handler对象绑定。
handler对象被传递给工作线程。
工作线程需要向主线程通信的时候,通过handler对象向主线程的消息队列发送Message。
在主线程的handler对象,通过handleMessage获得这个Message。可以做出相应的界面反应。
5 handler还有种常用功能。延迟启动一个线程。
主线程创建一个handler对象。
handler对象调用postDelayed,将一个Runable对象传递到主线程的消息队列中。
到达指定时间,消息会回调Runable对象的run方法。
run方法执行新线程的工作。