关于handler和线程

在主线程中使用handler,其实并没有创建一个单独的子线程,还是在主线程操作的,这一点要清楚,不要以为它是异步的就认为新开了一个线程。 主线程的handler1可以接收来自子线程由handler1发来的消息,但是主线程的handler2不能接收 。我们常用子线程发送来的消息更新主线程,比如界面更新等。 HandlerThread类 Looper 可以用来在子线程之间共享 子线程中new handler并发送消息,主线程接收 默认是不行的 子线程默认是没有消息队列的。 子线程需要使用handlerTHread 构造的时候得到主线程的Looper,才能发送消息,主线程接收。这种情况我们不经常用。 子线程可以通过得到主线程的消息队列,自己在子线程中发送,子线程接收。很少使用。 参考: [1]. android深入浅出

你可能感兴趣的:(thread,android,线程,handler,looper)