【发布时间】:2022-10-31 17:20:16
【问题描述】:
无论我是否在两个 doXX 函数中更改delay 的值,println 总是打印 3ms。
我认为所有三个协程都同时运行,所以我增加了最后一个协程的延迟以等待前两个完成。然后我打印变量time 的值。
这是代码。
fun main() = runBlocking<Unit> {
val time = measureTimeMillis {
launch { doSomethingUsefulOne() }
launch { doSomethingUsefulTwo() }
}
launch {
delay(6000)
println("Completed in $time ms")
}
}
suspend fun doSomethingUsefulOne() {
delay(1000L)
}
suspend fun doSomethingUsefulTwo(){
delay(1000L)
}
【问题讨论】:
-
你的问题到底是什么?