等待ConnectableObservable订户的任务完成

时间:2017-09-20 00:17:45

标签: java kotlin observable reactive-programming reactive

我创建了一个observable,它将通过多个订阅者使用,这些订阅者使用emits进行一些资源密集型任务。像这样使用:

val connectableObservable = Observable.create {...}.publish()
connectableObservable.doOnNext {...}.subscribe()
connectableObservable.doOnNext {...}.subscribe()
connectableObservable.connect()

不幸的是,connect()只是在等待源而不是订阅者完成任务。有没有办法等待ConnectableObservable的订阅者完成任务然后才继续执行?

1 个答案:

答案 0 :(得分:0)

其中一个订阅者包含.observeOn(Schedulers.io()),它将发送到指定的调度程序。可能.connect()只等待当前线程。删除它可以解决问题。