Я использую RxJava в моем проекте, и у меня есть ситуация, когда 2 метода вызывается один за другим, и оба возвращают пустоту. Каждый из этих методов внутренне использует RxJava.RxJava: Вызов нескольких несвязанных методов последовательно
Псевдо:
void sendMsg_1() {
...
//Fetch data from DB using RxJava to send message to client.
..
}
void sendMsg_2() {
...
Uses RxJava to send message to client.
..
}
Призывая код:
sendMsg_1();
sendMsg_2();
Практически sendMsg_2 быстрее и клиент получает его перед sendMsg_1 посылает его Сообщ. Это не хорошо для меня, и я хотел бы, чтобы вывод Msg1 отправлялся до Msg2.
Как это сделать?
Должен ли я искусственно вернуть манекен наблюдаемого только так я могу использовать .flatMap следующим образом:
sendMsg_1()
.flatMap(msgObj-> {
return sendMsg_2();
}).subscribe();
есть лучший способ?
Спасибо!
только проблемой в том, что вы не получите уведомление о завершении func_B. – njzk2
Что значит? Какое уведомление? – Shvalb
Вы были правы! - он работает не так, как ожидалось! – Shvalb