Как выполнить «завершаемое» параллельно с «одиночным», не дожидаясь завершения «завершаемого»? - PullRequest
0 голосов
/ 26 июня 2019

Моя функция должна выполнять некоторую работу (завершаемую, "countMetrics ()") параллельно с другой работой (одиночной, "fetchMessagesFromStorage ()").

"fetchMessagesFromStorage" возвращает сообщения, которые мне нужно передать обратно вызывающей стороне.

"countMetrics" не имеет возвращаемого значения, он просто обновляет некоторые метрики, меня не волнует результатневажно, успешный он или неудачный.

Я пытался сделать это:

private Single<Response> fetchMessages(Parameters params) {
   countMetrics().subscribeOn(Schedulers.newThread()).subscribe() // Schedulers.io(), Schedulers.computation() don't work either
   return fetchMessagesFromStorage(params)
}

Но "countMetrics" все еще выполняется в том же потоке и блокируется до конца, только тогда "fetchMessagesFromStorage""принимает свою очередь, чтобы выполнить.Что я делаю не так?

...