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.merge
:http://reactivex.io/documentation/operators/merge.html
确保 refreshEventsSubject.onNext(0)
不是从您的主线程调用的,因为它可能会导致死锁!
也可以使用 http://reactivex.io/documentation/operators/amb.html 而不是合并,因为合并会发出两个事件反对在您的主题上调用 onNext。
我们试图观察 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.merge
:http://reactivex.io/documentation/operators/merge.html
确保 refreshEventsSubject.onNext(0)
不是从您的主线程调用的,因为它可能会导致死锁!
也可以使用 http://reactivex.io/documentation/operators/amb.html 而不是合并,因为合并会发出两个事件反对在您的主题上调用 onNext。