Ron*_*nie 1 kotlin visual-studio-code kotlin-coroutines
我收到了在 Kotlin 中使用协程的未解决的参考资料。我不知道如何更新 vs code 上的 build.gradle 文件。我是否必须导入一些扩展或路径?这是下面的代码
import kotlin.coroutines.*
fun main() {
val states = arrayOf("Starting", "Doing Task 1", "Doing Task 2", "Ending")
repeat(3) {
GlobalScope.launch {
println("${Thread.currentThread()} has started")
for(i in states) {
println("${Thread.currentThread()} - $i")
delay(5000)
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
输出给出了有关 GlobalScope.launch() 和 delay() 的未解决的参考
GlobalScope,launch并且delay不属于 Kotlin 标准库的一部分,它们是Kotlinx 协程库的一部分。
要使用它们,您需要将协程库添加到您的 build.gradle(.kts) 中:
dependencies {
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.5.0")
}
Run Code Online (Sandbox Code Playgroud)
然后导入这些声明:
import kotlinx.coroutines.*
Run Code Online (Sandbox Code Playgroud)
作为旁注,GlobalScope除非您知道自己在做什么,否则不应该使用它,而且我猜您现在刚刚学习协程,因此您可能希望避免使用它。一般来说,您应该使用与某个具有生命周期的组件绑定的协程作用域。
在这种情况下,您可能希望runBlocking { ... } 在 main 方法的主体周围使用,这将在您等待协程时阻塞主线程。
| 归档时间: |
|
| 查看次数: |
2834 次 |
| 最近记录: |