转:
http://blog.csdn.net/u013718120/article/details/53115824
从源码分析Handler的postDelayed为什么可以延时?
https://www.zhihu.com/question/34652589
Android中为什么主线程不会因为Looper.loop()里的死循环卡死?
http://blog.csdn.net/qq_24531461/article/details/72972416
epoll模型
当没有消息的时候会epoll.wait,等待句柄写的时候再唤醒,这个时候其实是阻塞的。所有的ui操作都通过handler来发消息操作。
比如屏幕刷新16ms一个消息,你的各种点击事件,所以就会有句柄写操作,唤醒上文的wait操作,所以不会被卡死了。
深入理解MessageQueue
1.Handler
2.messagequeue
根据messge send的时间更新消息队列
3.looper
死循环从messgequeue取messge
4.ActivityThread是真正的核心类,它的main方法,是整个应用进程的入口
https://www.jianshu.com/p/0efc71f349c8
Android app启动一个新进程流程
http://blog.csdn.net/wanzhining/article/details/9495753