2016-09-16 17 views
2

呼び出し側スレッド以外の同じスレッドで2つの異なるストリームを購読することはできますか?同じスレッドで複数のストリームを実行する

私は2つの異なる観測値と2つの異なる加入者を持っているとします。そして私はsubscribeOn(Schedulers.newThread())と両方の観測値を呼び出します。しかし、私は彼らが同じスレッドではなく、2つの異なるスレッドで購読したい。

答えて

3

はいあなたがすることができます

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

そして、両方の観測に.subscribeOn(scheduler)を適用します。 1つのストリームが他のストリームをブロックする可能性がありますが、これはもちろん観測値と加入者リクエストパターンに依存します。

1

要するに、あなたが試みることができるいくつかのハッキングがありますが、それらは問題になるでしょう。複数のスレッドを使用するのが最善です。

+0

Dave Motenの答えに問題はありますか? – npace

関連する問題