我尝试使用rx和PublishSubject。所以我创建对象:

PublishSubject<MyEvent> events = PublishSubject.create();

在我的服务中,我在其中添加了MyEvent

events.onNext(new MyEvent);

所以有时候我没有收到第一个事件,但是我收到了第二个事件。
有时我会收到所有事件。谁能解释,这是什么问题?

最佳答案

PublishSubject将事件发送给所有“当前订阅”的订户。它不会发送给将来订阅的订户。

订阅时,BehaviorSubject将发出最后一个已知值,然后表现为PublishSubject。我的猜测是这是您期望的行为。

10-07 15:51