Handler和HandlerThread

Handler提供了一种异步消息处理的机制,当程序sendMessage后可以继续执行,而Handler对象则用handleMessage方法处理。

Handler和HandlerThread_第1张图片

但是事实上。handler并没有真正的重新开启一个线程去处理,它还是使用的Activity所在的主线程,所以下面用HandlerThread和Looper来构建新线程。

1、HandlerThread继承于Thread,所以它本质就是一个Thread。区别在于它有个Looper成员变量。

2、Looper对象就是对消息队列以及队列处理逻辑的封装,也就是消息队列+消息处理循环。

Handler和HandlerThread_第2张图片

Handler和HandlerThread_第3张图片

注意:线程handlerThread必须启动了才能得到Looper对象。

你可能感兴趣的:(thread)