美文网首页
理解 MessageQueue

理解 MessageQueue

作者: jubincn | 来源:发表于2017-12-25 00:41 被阅读0次

Android的MessageQueue经历过一次大的变化,在2.0的时候,还没有native这一层。但到了2.3,就变为了现在这种模式。

TL,DR

  1. MessageQueue是个单链表
  2. MessageQueue里消息按时间排序
  3. MessageQueue的next()是个堵塞方法

MessageQueue理解的核心在next()这里。next()的实现根据版本不同有两种,一种是Java的实现,一种是带动native层的实现。

Java的实现比较简单,就是wait()和notify()。
目前使用的方式是在native层整了一份MessageQueue, Looper。具体过程深入理解Android卷2写的很好了,先直接看下面的参考资料吧。

相关类图

image.png

参考资料

  1. https://www.kancloud.cn/alex_wsc/android-deep2/413392

相关文章

网友评论

      本文标题:理解 MessageQueue

      本文链接:https://www.haomeiwen.com/subject/waazwxtx.html