https://kotlinlang.org/docs/reference/coroutines/coroutine-context-and-dispatchers.html#combining-context-elements
官方文档说我可以结合一些协程上下文,但是这样做的目的是什么,效果是什么?
这是否意味着协程的生命周期仅限于两种上下文?
最佳答案
我认为您混淆了 CoroutineContext
和 CoroutineDispatcher
(也可能是 CoroutineScope
)。 Dispatcher只是一种Context。其他人可以是例如。 Job
, CoroutineName
, CoroutineExceptionHandler
。您可以组合多个这些 - 例如。设置调度程序和错误处理程序 - 但每种类型只有一个。
组合多个调度器没有意义,只会应用最后一个。
我从 KotlinConf 2019 中发现 the talk Coroutines! Gotta catch 'em all! by Florina Muntenescu & Manuel Vivo 很好地解释了其中的一些。
关于android - 在 Kotlin 中组合协程上下文的目的是什么?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/60502591/