1.协程作用域
1.1定义mainScope,在destroy中取消
class Activity {
private val mainScope = MainScope()
fun destroy() {
mainScope.cancel()
}
1.2.mainScope.launch
// 在 Activity 类中
fun doSomething() {
// 在示例中启动了 10 个协程,且每个都工作了不同的时长
repeat(10) { i ->
mainScope.launch {
delay((i + 1) * 200L) // 延迟 200 毫秒、400 毫秒、600 毫秒等等不同的时间
println("Coroutine $i is done")
}
}
}
} // Activity 类结束
2.
viewModelScope.launch
类似Java viewModel