为什么会有ANR,其原理是什么?
以service为例,了解ANR的原理:https://blog.csdn.net/chuotao1354/article/details/100767873
主线程中的死循环为什么不会导致ANR?
源于linux的pipe/epoll机制,当looper拿不到更多消息时,主线程阻塞并进入休眠,释放CPU资源
https://blog.csdn.net/yichen97/article/details/106367067
MessageQueen的实现原理?
- 定义:采用单链表的数据结构来存储消息列表
- 作用:用来存放通过Handler发过来的Message,按照先进先出执行
- 消息存储:根据时间戳排序存储
https://blog.csdn.net/qq_30379689/article/details/53394061#g