2016-09-16 46 views
2

是否可以在除调用者线程之外的同一线程中订阅两个不同的流?在同一线程中运行多个流

假设我有两个不同的观测值和两个不同的用户。我对这两个观察对象都致电subscribeOn(Schedulers.newThread())。但我希望他们订阅同一个线程,而不是两个不同的线程。

回答

3

是,您可以:

Scheduler scheduler = 
    Schedulers.from(Executors.newSingleThreadExecutor()); 

然后申请.subscribeOn(scheduler)这两个观测。一个流可能会阻塞另一个流,但这当然取决于您的可观察性和订户请求模式。

1

总之,没有。有一些你可以尝试的黑客,但他们会有问题。最好使用多个线程。

+0

Dave Moten的回答有什么问题吗? – npace