HandlerThread继承自Thread, 通过消息驱动线程处理某些事情。
(其他方法包括-继承Thread, 实例化一个Thread并传入一个runnable做参数, etc.)
HandlerThread 可以提供一个looper 用于构造一个Handler类,这样Thread的实现就简化为了Handler类的消息处理。
1. 实例化HandlerThread对象
HandlerThread thread = new HandlerThread("threadname") or new HandlerThread("threadname", Process.THREAD_PRIORITY_XXX); thread.start();
2. 取得Looper对象,作为实例化handler继承类的参数。
Looper looper = thread.getLooper(); MyHandler hander = new MyHandler(looper);
3.实现MyHandler
public class MyHander extends Handler { public MyHander(Looper looper) { super(looper); } @Override public void handleMessage(Message msg) { //处理消息 } }