美文网首页Android技术知识Android开发
EventBus源码解析(三):Post/PostSticky

EventBus源码解析(三):Post/PostSticky

作者: 涅小黑 | 来源:发表于2020-08-21 09:46 被阅读0次

EventBus源码解析(一):概述
EventBus源码解析(二):Register
EventBus源码解析(三):Post/PostSticky
EventBus源码解析(四):优化-EventBusIndex

post过程

通过post或者postSticky发布事件,如果postSticky则会把事件放到stickyEvents里面,后面注册的对象如果有sticky方法会从这里拿。

  1. 事件会被放到对应线程的PostingThreadState里面的eventQueue里面,如果PostingThreadState之前没在消费事件,则调用PostingThreadState开始消费事件。
  2. 如果设置支持事件父类也能监听到这个事件,则找到所有的事件列表
  3. 逐一发送事件,根据事件类型从subscriptionsByEventType找到所有的监听者Subscription
  4. 根据Subscription里面的响应线程分发事件

总体看来,Eventbus的原理还是很简单的

相关文章

网友评论

    本文标题:EventBus源码解析(三):Post/PostSticky

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