线程(HandlerThread)

来源:互联网 发布:sql中的isnull 编辑:程序博客网 时间:2024/04/29 15:53

HandlerThread继承Thread,创建一个线程,并且有它自己的looper,这样它就可以在自己的线程中分发和处理消息,即它不但可以提供异步处理,并且Handler处理也会在

这个线程中执行。

(备注:我们在service中如果要创建一个线程来处理内容的话,常常可以用HandlerThread来实现)

使用示例代码:

    private ServiceHandler mServiceHandler;
  private Looper mServiceLooper;

        HandlerThread thread = new HandlerThread(TAG, Process.THREAD_PRIORITY_BACKGROUND);
        thread.start();

        mServiceLooper = thread.getLooper();
        mServiceHandler = new ServiceHandler(mServiceLooper);


    private final class ServiceHandler extends Handler {
        public ServiceHandler(Looper looper) {
            super(looper);
        }

        @Override
        public void handleMessage(Message msg) {

}

    }