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