NY
private suspend fun doSomeWork() = coroutineScope {
launch {
delay(5000)
}
}
private suspend fun doSomeWork() = CoroutineScope(coroutineContext).launch {
delay(5000)
}
Size: a a a
NY
private suspend fun doSomeWork() = coroutineScope {
launch {
delay(5000)
}
}
private suspend fun doSomeWork() = CoroutineScope(coroutineContext).launch {
delay(5000)
}
RE
RE
MR
RE
MR
AN
NY
doSomeWork
вызвали. Но при этом сам скоуп (viewModelScope) прокидывать не хочется. Сейчас делаю вторым спобом. Поскольку циклов нет и просто разово выполняется подписка.NY
RE
fun CoroutineScope.doSomeWork() = launch { ... }
VP
RE
RE
RE
suspend fun doSomeWork()
то я ожидаю что она делает какую-то работу и возвращается только когда эта работа закончена (документацию и реализацию никто читать не будет)RE
fun CoroutineScope.launchSomeWork() = launch { ... }
NY
private val channel = BroadcastChannel<Int>(1)
private fun bind(scope: CoroutineScope) = scope.launch {
channel.openSubscription()
.consumeEach { println(it) }
}
AN
private val channel = BroadcastChannel<Int>(1)
private fun bind(scope: CoroutineScope) = scope.launch {
channel.openSubscription()
.consumeEach { println(it) }
}
RE
RE
MR