Guava之EventBus源码分析

简介

事件总线。

有助于深入理解代码的功能和实现细节。

可以了解代码背后的逻辑、算法、数据结构和设计模式等方面,从而更好地理解代码的作用和功能。

可以学习到业界的最佳实践和设计模式。

这有助于提高自己的编程水平,使你能够编写更高质量、可扩展性和可维护性的代码。

代码结构

包:

com.google.common.eventbus

类:

文件 类型 描述
AllowConcurrentEvents 注解
AsyncEventBus 异步事件总线
DeadEvent 无订阅事件
Dispatcher 抽象类 分发器,有三种:PerThreadQueuedDispatcher LegacyAsyncDispatcher ImmediateDispatcher
EventBus 同步事件总线
Subscribe 注解 事件订阅注解
Subscriber 订阅者
SubscriberExceptionContext 订阅异常上下文
SubscriberExceptionHandler 接口 订阅异常处理器
SubscriberRegistry 单个事件总线的订阅者的注册

设计模式

观察者模式

发布订阅模式

核心类

分发器

1、PerThreadQueuedDispatcher

同步分发器

执行器

MoreExecutors.directExecutor()

2、LegacyAsyncDispatcher

异步分发器

执行器

自定义线程池

相关推荐
独自破碎E18 小时前
【归并】数组中的逆序对
java·数据结构·算法
范什么特西18 小时前
打开idea项目
java
黎雁·泠崖18 小时前
Java入门从零起步:CMD操作+JDK环境搭建+第一个Java程序
java·开发语言
我的golang之路果然有问题18 小时前
python中 unicorn 热重启问题和 debug 的 json
java·服务器·前端·python·json
码农小卡拉18 小时前
深度解析 Spring Boot 启动运行机制
java·spring boot·后端
weixin_4481199418 小时前
如何装docker
java·云原生·eureka
钦拆大仁18 小时前
如何手搓一个Spring Security
java·后端·spring
yaoxin52112318 小时前
288. Java Stream API - 创建随机数的 Stream
java·开发语言
kylezhao201918 小时前
C#根据时间加密和防止反编译
java·前端·c#
Assby18 小时前
Java异常体系结构
java·后端