首页 > 解决方案 > 在 Kotlin 中组合协程上下文的目的是什么?

问题描述

https://kotlinlang.org/docs/reference/coroutines/coroutine-context-and-dispatchers.html#combining-context-elements

官方文档说我可以结合一些协程上下文,但是这样做的目的是什么,有什么效果呢?这是否意味着协程的生命周期仅限于两种上下文?

标签: androidkotlinkotlin-coroutineskotlin-android-extensions

解决方案


我认为你很困惑CoroutineContextCoroutineDispatcher(可能也是CoroutineScope)。Dispatcher 只是一种 Context。其他可以是例如。Job, CoroutineName, CoroutineExceptionHandler. 您可以组合其中的多个 - 例如。设置调度程序和错误处理程序 - 但每种类型只有一个。

组合多个调度程序是没有意义的,只会应用最后一个。

我找到了谈话协程!需要把他们全都抓到!来自 KotlinConf 2019的 Florina Muntenescu 和 Manuel Vivo很好地解释了其中的一些内容。


推荐阅读