问题标签 [event-bus]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 使用 Otto 或 EventBus 之类的事件库是处理活动、片段和后台线程之间关系的推荐方法
在大多数情况下,在处理案件时
- 用户线程 (
AsyncTask
) 执行后台处理 - 将计算结果传回
Activity
或Fragment
Activity
或者Fragment
在用户线程完成其后台处理之前可能会发生重新创建
到目前为止,从许多可靠的来源,我可以看到推荐的方法是使用 Retained Fragment
来源
- 最佳实践:方向更改期间的 AsyncTask
- http://www.vogella.com/tutorials/AndroidBackgroundProcessing/article.html
- http://www.androiddesignpatterns.com/2013/04/retaining-objects-across-config-changes.html
有时,我听说事件总线库对于处理活动、片段和后台线程之间的关系很有用。(请参考https://github.com/greenrobot/EventBus。它声明与活动、片段和后台线程一起表现良好)
我遇到了一些非常流行的事件总线库
我想知道,在处理活动、片段和后台线程之间的关系时,事件总线方法与保留片段方法有何不同?
哪些方式是推荐的方式?
android - EventBus vs Callbacks, which to use when?
I have many Activities which raise background tasks; the Activities will pass themselves in as having implemented a listener callback, so that the background tasks can raise an event on the Activities. The Activities in turn can show something on the UI to indicate that a background activity passed or failed.
Alternatively, I could use an EventBus, wherein I get the Activity to register itself as a listener/subscriber. I can have a background tasks raise an event on the EventBus and the Activity listening to it can handle it.
What are the advantages of one over the other? When would you use one over the other? (Code cleanliness? Performance? Caveats?)
Follow up - I did end up using EventBus. The code is definitely a lot cleaner and there aren't callbacks hanging out everywhere. The IDE (IntelliJ) thinks that the onEvent
methods are unused, so I created an annotation
and placed it over my onEvent
methods. Then Alt+Clicked on it and asked IntelliJ to not treat it as unused.
java - Java使用akka向服务器发布命令
我是akka的新手,所以想问一下如何将事件添加到事件总线并捕获它。有代码示例。
类型:
ClientActor.java
问题是没有调用“witingCommand”,也许有人可以告诉我我做错了什么?
android - 在 Otto 的消息生产者中创建的事件对象在哪里?
按照Otto 的代码示例,当产生事件时,会从生产者函数返回一个事件类:
但是,AnswerAvailableEvent
似乎没有在任何地方定义。文档中唯一提到的其他时间是发布事件时
当收到事件时:
这个类是否以某种方式自动定义?类如何知道如何处理this.lastAnswer
参数?
谢谢。
cluster-computing - Vert.X 事件总线可扩展性
关于 vert.x 事件总线可扩展性的一个问题。我打算在智能设备(小型)应用程序和远程管理应用程序中使用 vert.x。初步估计将有接近 100K 的智能设备和 3/4 的服务器托管管理应用程序。在这种情况下,您能否建议在智能设备和 Web 应用程序之间使用事件总线(在集群模式下)。我使用事件总线的主要要求是将源自设备的动态通知发送到管理服务器,并在系统出现故障时采取纠正措施。
我最近发布了另一个查询,其中一位用户指出,vert.x 在内部使用网络套接字作为由 hazelcast 支持的事件总线来进行集群模式发现。如果是这种情况,我的假设是可伸缩性将受到管理服务器可以处理的套接字数量的限制。这是正确的吗 ?
如果有人能指出我在 vert.x 事件总线上就 msg 处理性能进行的任何基准测试,也将不胜感激。
android - Android - 使用事件总线(如 Otto)进行 UI 元素通信是否正确?
我可以(是否正确)使用事件总线在 UI 视图之间进行通信?例如,使用它在 Fragment 之间进行通信而不是实现侦听器?
我可以将同一个总线实例用于多个操作吗?
谢谢
java - 静态初始化器的合法用途?
我记得几年前我使用静态初始化器来调用类级别的设置操作。我记得它有非常奇怪的行为,我只是决定避开它们。也许是因为我搞乱了上下顺序或者是新手。但是我遇到了重新审视它们的需要,并且我想确保没有更好的方法同样简洁。
我知道这并不流行,但我经常使用数据驱动的类来维护从数据库导入的实例的静态列表。
当我有几十个像这样的表驱动类时,这种模式非常简洁(是的,我知道它将类与一个数据/实例源紧密耦合)。
但是,当我发现 Google Guava 的优点时,我想在某个事件发布时使用 EventBus 更新静态列表。我将创建一个静态最终布尔变量,只是为了调用一个初始化注册的静态方法。
这很快就变得很烦人,因为编译器会对从未使用过的订阅变量发出警告。此外,它只是增加了混乱。所以我想知道使用静态初始化器是否符合规定,如果我不将它解耦成两个或更多类,真的没有更好的方法。想法?
android - GreenRobot EventBus - 使用 EventBus 启动一个新的 Fragment
GreenRobot EventBus- 使用 EventBus 启动一个新片段 我正在使用 EventBus 库发布一个新片段,但没有任何反应。
我正在使用这种方法
我从 github 获取了一个示例代码,该库正在使用该库当我采用项目中已经使用的“A”类时,上述方法可以正常工作,但是当我使用我正在集成到项目中的“B”类时,然后什么也没有发生。我是否遗漏了任何东西,我的意思是是否有必要注册课程或其他东西。
javascript - React.js - 通量与全局事件总线
与全局事件总线相比,使用 Flux 有什么优势?我认为调度程序就是所需要的:
- 组件将带有数据的“用户事件”发布到调度程序
- 调度程序执行订阅商店的处理程序
- 处理程序使用商店的更新属性发布“更新事件”
- 调度程序执行订阅组件的处理程序,并使用商店的更新属性更新组件状态
我在这里缺少什么是没有 Flux 做不到的?
java - RxJava 事件总线和错误处理
我正在尝试使用 rxjava 创建一个事件总线,在该事件总线上我会抛出一些即使发生错误也会继续的命令。我正在研究 onErrorFlatMap 但它不再存在,我还无法理解具体化和非具体化。
这是我已经拥有的:
我的小测试
事件总线
创建命令
豆A
豆B
实际输出
想要的输出
任何想法如何解决它?我看到 rxjava 中有一个关于 EventBus 实现示例的问题,但没有找到。
我还希望我的服务不需要做一些特定的 rxjava 错误处理。
或者是否有另一种方式将事件推送到多个其他可观察对象,然后再次压缩结果?