你的位置:首页 > 操作系统

[操作系统]android handler传递消息机制


当工作线程给主线程发送消息时,因为主线程是有looper的,所以不需要初始化looper,注意给谁发消息就关联谁的handler,此时用的就是主线程的handler

handler会把消息发送到MessageQueue队列中,looper会不断的去遍历MessageQueue队列,当一有消息时就会回调handler的handleMessage方法!

当主线程给工作线程发消息时,关联的是子线程的handler,子线程是没有looper的。所以我们需要调用Looper.prepare(),初始化一个Looper,放入Threadlocal中,

最后要调用looper.loop方法开始轮询MessageQueue队列里面的消息,机制也是回调机制!