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

异步分发器

执行器

自定义线程池

相关推荐
CHU7290355 小时前
货运物流APP前端交互创新:以用户为中心重构运输服务全链路
java·前端·小程序·重构
啊哈哈哈哈哈啊哈哈5 小时前
AOP笔记
java·开发语言
毕设源码-钟学长5 小时前
【开题答辩全过程】以 火车票订票系统为例,包含答辩的问题和答案
java
西门吹雪分身5 小时前
JUC之可重入锁
java·juc·死锁·公平锁·非公平锁
A懿轩A5 小时前
【Java 基础编程】Java 正则表达式实战:Pattern/Matcher、元字符与常用正则,验证与提取必备
java·开发语言·正则表达式
予枫的编程笔记5 小时前
【Kafka进阶篇】Spring Boot Kafka客户端踩坑记:自定义序列化器+ContainerFactory调优指南
java·spring boot·kafka·java21·并发消费·kafka客户端·自定义序列化器
黎雁·泠崖5 小时前
Java 集合入门:Collection & List 接口超详细讲解
java·list
Cxiaomu5 小时前
React Native项目(Android )集成虹软 ArcFace(人脸识别增值版 5.0 Java)
android·java·react native
柒.梧.6 小时前
Java代理模式精讲:静态代理+JDK动态代理
java·开发语言·代理模式
悠闲蜗牛�6 小时前
Go语言高并发编程深度实战:从原理到性能优化的完整指南
java·运维·数据库