handler的归属主要因为looper原因
looper构造源码:
- private Looper() {
- mQueue = new MessageQueue();
- mRun = true;
- mThread = Thread.currentThread();
- }
loop方法负责发送消息:
public class Looper{
......
publicstatic final void loop() {
Looperme = myLooper();
MessageQueuequeue = me.mQueue;
......
while(true) {
Messagemsg = queue.next(); // might block
......
if(msg != null) {
if(msg.target == null) {
//No target is a magic identifier for the quit message.
return;
}
......
msg.target.dispatchMessage(msg);
......
msg.recycle();
}
}
}
......
}