为什么PublishSubject不会发出第一个元素

shm*_*ova 1 android rx-java

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

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

在我的服务中,我把MyEvent它放进去.

events.onNext(new MyEvent);

所以有时候我没有收到第一个活动,但是我收到了第二个活动.有时我收到所有活动.任何人都可以解释,这可能是什么问题?

Kis*_*kae 6

PublishSubject将事件发送给所有"当前订阅"的订阅者.它不会向将来订阅的订阅者发出.

BehaviorSubject订阅时会发出最后一个已知值,然后表现得像PublishSubject.我的猜测是,这是你期望的行为.