3

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

主题是这样发起的

private val refreshEventsSubject = PublishSubject<Long>()

然后我们试着像这样观察它

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

我们每 15 秒从间隔中获取事件,但主题在运行后没有触发

refreshEventsSubject.onNext(0)

任何想法表示赞赏。

(一切都是用 Kotlin 编写的)

4

2 回答 2

1

确保refreshEventsSubject.onNext(0)没有从主线程调用,因为它可能导致死锁!

还使用http://reactivex.io/documentation/operators/amb.html而不是合并,因为合并将在您的主题上调用 onNext 时发出两个事件。

于 2016-11-17T17:21:24.800 回答
0

阅读 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

于 2016-11-16T11:17:07.113 回答