测试下协程嵌套:
Kotlin
private fun test1() { // 测试协程的嵌套
lifecycleScope.launch {
Log.d("zxzx", "启动parent协程,线程:${Thread.currentThread().name}")
val parent = lifecycleScope.launch {
Log.d("zxzx", "parent协程开始执行,线程:${Thread.currentThread().name}")
launch {
Log.d("zxzx", "子协程1开始, 线程:${Thread.currentThread().name}")
delay(1000)
Log.d("zxzx", "子协程1完成, 线程:${Thread.currentThread().name}")
}
launch {
Log.d("zxzx", "子协程2开始, 线程:${Thread.currentThread().name}")
delay(2000)
Log.d("zxzx", "子协程2完成, 线程:${Thread.currentThread().name}")
}
}
parent.join()
Log.d("zxzx", "parent协程完成。")
Log.d("zxzx", "你以为湾仔你最大?我乌鸦偏偏不把你放在眼里。")
}
}
运行,打印:

ok. join函数能让父协程等待子协程完成。