У меня есть асинхронный CoroutineScope
, в котором может быть (по условию) вызов подфункции, которая возвращает свой результат в асинхронном Unit
Как я могу дождаться возвращенного результата и вернуть его вне асинхронного Unit
. Поэтому дождитесь вызова Unit
подфункцией.
Пример:
GlobalScope.launch {
var value: Int = 0
if (condition) {
// the subFunction has a Unit<Int> as return type
subFunction() { result ->
value = result
}
}
Log.v("LOGTAG", value.toString())
}
Как я могу дождаться завершения выполнения subFunction
перед продолжением кода или напрямую присвоить значение результата переменной?
subFunction
не должен быть suspend
функцией, однако он может быть встроен во вспомогательную функцию.
(код должен работать в среде Android)
subFunction
- person Sebastian Schneider   schedule 31.07.2019