私はRxJavaを介してリクエストへの応答を聞くことができるような状況に陥っています。問題は、Observableを設定してイベントをリスンし、正しい順序で購読してメッセージを送信する方法がわからないことです。スレッドが中断されたり、応答が超高速であれば、私はそれを逃すことができるので、メッセージを送信したくない。これは私が上で考えることができ最も近い自分のRxJavaで購読するには
connection.onReceivedMessage()
.doOnSubscribe(() -> connection.send(message))
.filter(message -> message.id == id)
... // do stuff
または
Observable.defer(() -> {
connection.send(message);
return connection.onReceivedMessage();
})... // do stuff
しかし、私はまだメッセージを送ることができ、応答を聴くことがないように、これらはまだいるようです。誰かがこれをやろうとしましたか?私は本当に一種のafterCreate()が欲しいと思う。
doOnSubscribeはそのように機能しますか?私はこれ以上テストしなければならないでしょう。私は確認するために単体テストをしたことはないと認めます。 – Buttink