EventHub、Emitter、commonEventManager 三种事件能力区别与选择
EventHub、Emitter、commonEventManager 三种事件能力区别与选择
HarmonyOS
赞
收藏 0
回答 1
待解决
相关问题
Emitter与EventHub的区别是什么?
340浏览 • 1回复 待解决
解码后的数据帧送显的三种方式
239浏览 • 1回复 待解决
#鸿蒙学习大百科#系统、三方、预置这三种应用有哪些区别?
124浏览 • 1回复 待解决
请问Page Ability,Service Ability,Data Ability这三种Ability的区别和应用场景是什么?
10276浏览 • 2回复 待解决
关于emitter、eventHub的使用场景
2485浏览 • 1回复 待解决
视频进度滑动条的三种实现方式
1303浏览 • 1回复 待解决
candidate 会在哪三种情况下退出?
3851浏览 • 1回复 待解决
#鸿蒙学习大百科#HarmonyOS中的Moudule的HAP、HAR、HSP三种类型有什么区别?
298浏览 • 1回复 待解决
树莓派可以安装deb rpm bin三种格式吗?
2622浏览 • 1回复 待解决
HarmonyOS 事件订阅 emitter问题
436浏览 • 1回复 待解决
PolarDB 支持结构迁移、全量数据迁移和增量数据迁移,这三种迁移类型有什么好处?
3013浏览 • 1回复 待解决
#鸿蒙学习大百科#GridRow如何适配sm,md,lg三种尺寸的设备?
214浏览 • 1回复 待解决
HarmonyOS第三方开源FFmpeg与AVCodec kit 区别?
601浏览 • 1回复 待解决
HarmonyOS 测试应用需要调试订阅推送、实况窗更新消息、通知扩展消息 申请开启此三种场景的推送
206浏览 • 1回复 待解决
HarmonyOS emitter.on 的订阅事件 回调不调用
517浏览 • 1回复 待解决
无序公共事件、有序公共事件和粘性公共事件三者有什么区别?
345浏览 • 1回复 待解决
事件系统eventHub,在组件中使用 eventHub.on 订阅的方法,不能访问组件的变量
979浏览 • 1回复 待解决
Localstorage与AppStorage区别
1965浏览 • 1回复 待解决
OpenHarmony3.1release Emitter 无法在service中发送事件
5463浏览 • 1回复 待解决
HarmonyOS除了eventHub还有什么事件机制可以传递WrappedBuilder吗?
211浏览 • 1回复 待解决
TaskPool与Worker的区别
1971浏览 • 1回复 待解决
HarmonyOS Array与ArrayList的区别
754浏览 • 1回复 待解决
为了满足不同场景下对一致性级别的要求,PolarDB 提供了哪三种一致性级别?
3036浏览 • 1回复 待解决
Oceanbase与DRDS的关系与使用场景的区别?
3769浏览 • 1回复 待解决
@StorageProp与@StorageLink有什么区别?
642浏览 • 1回复 待解决
背景与分析
HarmonyOS系统上主要提供了3种事件相关的模块,分别是EventHub、Emitter、commonEventManager。
它们3个模块使用上非常相识,都是订阅+发布的形式。但是实际应用场景有很大的不同。
EventHub
EventHub模块提供了事件中心,提供订阅、取消订阅、触发事件的能力。
特点:
Emitter
Emitter模块提供了在同一进程不同线程间,或同一进程同一线程内,发送和处理事件的能力,包括持续订阅事件、单次订阅事件、取消订阅事件,以及发送事件到事件队列的能力。
特点:
commonEventManager
CommonEvent模块提供了公共事件相关的能力,包括发布公共事件、订阅公共事件、以及退订公共事件。
特点:
如何选择
主线程内通信:EventHub
主线程与Worker间通信:Emitter
应用间通信:commonEventManager
获取系统公共事件信息(低电量、充电信息):commonEventManager