在进行Android开发很多时候都会用到线程调度,使用较多的就是Handler和Thread,其实Android还为我们封装了他们的结合体HandlerThread,那么他是个什么东西呢,又是怎么工作的,我们今天就来从源码角度来分析一下HanderThread
我们知道在线程里面创建Handler需要先调用Looper.prepare()创建looper,最后调用Looper.loop()开启循环,使用示例代码如下:
new Thread(){
@Override
public void run() {
Looper.prepare();
handler = new Handler(){
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
}
};
Looper.loop();
}
}.start();
一不小心忘记创建了looper可能会报错,或者忘记开启了消息队列的循环可能导致消息不能得到处理,有没有把这些都封装好的接口可供我们调用呢,这就是我们今天要讲的HandlerThread。我们先看看HandlerThread的使用方法:
HandlerThread handlerThread = new HandlerThrea