RxJava(Kotlin),Observable.amb 和 PublishSubject 没有触发

RxJava(Kotlin), Observable.amb and PublishSubject is not firing

我们试图观察 15 秒的间隔,或者每当我们对我们的主题 onNext 开火时 refreshEventsSubject,但没有成功。

主题是这样发起的

private val refreshEventsSubject = PublishSubject<Long>()

然后我们试着这样观察它

Observable.merge(Observable.interval(0, 15, TimeUnit.SECONDS), refreshEventsSubject) .subscribe { ... }

我们每 15 秒从间隔中获取事件,但对象在 运行

后没有开火

refreshEventsSubject.onNext(0)

任何想法表示赞赏。

(一切都是用 Kotlin 编写的)

阅读 AMB 文档:http://reactivex.io/documentation/operators/amb.html

具体来说emit all of the items from only the first of these Observables to emit an item or notification.

您要查找的运算符可能是Observable.mergehttp://reactivex.io/documentation/operators/merge.html

确保 refreshEventsSubject.onNext(0) 不是从您的主线程调用的,因为它可能会导致死锁!

也可以使用 http://reactivex.io/documentation/operators/amb.html 而不是合并,因为合并会发出两个事件反对在您的主题上调用 onNext。