呼び出し側スレッド以外の同じスレッドで2つの異なるストリームを購読することはできますか?同じスレッドで複数のストリームを実行する
私は2つの異なる観測値と2つの異なる加入者を持っているとします。そして私はsubscribeOn(Schedulers.newThread())
と両方の観測値を呼び出します。しかし、私は彼らが同じスレッドではなく、2つの異なるスレッドで購読したい。
呼び出し側スレッド以外の同じスレッドで2つの異なるストリームを購読することはできますか?同じスレッドで複数のストリームを実行する
私は2つの異なる観測値と2つの異なる加入者を持っているとします。そして私はsubscribeOn(Schedulers.newThread())
と両方の観測値を呼び出します。しかし、私は彼らが同じスレッドではなく、2つの異なるスレッドで購読したい。
はいあなたがすることができます
Scheduler scheduler =
Schedulers.from(Executors.newSingleThreadExecutor());
そして、両方の観測に.subscribeOn(scheduler)
を適用します。 1つのストリームが他のストリームをブロックする可能性がありますが、これはもちろん観測値と加入者リクエストパターンに依存します。
要するに、あなたが試みることができるいくつかのハッキングがありますが、それらは問題になるでしょう。複数のスレッドを使用するのが最善です。
Dave Motenの答えに問題はありますか? – npace