您当前的位置: 首页 > 

韩曙亮

暂无认证

  • 1浏览

    0关注

    1068博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

【EventBus】事件通信框架 ( 发送事件 | 根据事件类型获取订阅者 | 调用订阅方法 )

韩曙亮 发布时间:2021-09-28 20:37:53 ,浏览量:1

文章目录
  • 一、根据事件类型获取订阅者
  • 二、调用订阅方法

一、根据事件类型获取订阅者

接收到了 发布者 Publisher 发送给本消息中心 的 Event 消息事件对象 , 将该事件对象转发给相应接收该类型消息的 订阅者 ( 订阅对象 + 订阅方法 ) ;

通过事件类型到 Map, CopyOnWriteArrayList> subscriptionsByEventType 集合中查找事件类型对应的订阅者 ;

        // 获取事件类型对应的 订阅者 集合
        CopyOnWriteArrayList subscriptions =
                subscriptionsByEventType.get(eventType);

遍历并调用订阅者 :

        // 确保订阅者大于等于 1 个
        if (subscriptions != null && subscriptions.size() > 0) {
            // 遍历订阅者并调用订阅方法
            for (MySubscription subscription : subscriptions) {
                postSingleSubscription(subscription, event);
            }
        }

部分代码示例 :

    /**
     * 接收到了 发布者 Publisher 发送给本消息中心 的 Event 消息事件对象
     *      将该事件对象转发给相应接收该类型消息的 订阅者 ( 订阅对象 + 订阅方法 )
     *      通过事件类型到
     *      Map            
关注
打赏
1663594092
查看更多评论
0.0414s