当looper循环因为MessageQueue中消息为空而阻塞时,应用会不会卡住不动
来源:8-5 主线程进入loop循环了为什么没有ANR?
海怪
2020-03-14
老师你好!
请问当looper循环因为MessageQueue中消息为空而阻塞时,主线程是不是就阻塞了,那么会不会造成主线程没有机会再发送新的消息进入消息队列**(因为主线程阻塞在读取消息的地方了)**,会不会造成界面无法响应用户的事件了
写回答
2回答
-
风语
2020-04-06
点击按钮之后,事件是从系统进程派发到应用进程的,从Binder线程发消息到应用的主线程处理
10 -
风语
2020-03-31
不会,主线程阻塞了,所以只能通过其它的线程来唤醒,比如用户点击了某个按钮,系统给事件跨进程传递给应用进程,调到了应用进程的Binder线程池,然后再唤醒主线程
112020-04-01
相似问题