【发布时间】:2020-03-12 11:02:07
【问题描述】:
我是 Kotlin 协程的新手,并试图理解它的概念。 我测试了下面的代码,我希望最后一个打印语句应该在延迟之前打印,但我无法实现。我在运行阻塞中尝试了 Dispatcher.IO,并假设它将异步运行但仍然没有任何好处。
有趣的 main() {
println(Thread.currentThread().name)
runBlocking(Dispatchers.IO) {
println("first "+Thread.currentThread().name)
kotlinx.coroutines.delay(3000)
println("second "+Thread.currentThread().name)
}
println("last "+Thread.currentThread().name)
}
输出:
主要
第一个 DefaultDispatcher-worker-1
第二个 DefaultDispatcher-worker-1
最后一个主
【问题讨论】: