如何定义一个任务,运行 将来,以及使用 Kotlin 协程取消它
How to define a task, run it in the future, and cancel it using Kotlin coroutines
我是科特林的新手 Coroutines
。我定义了一个 Runnable
并在函数中使用 Handler
延迟调用它。重要的是在每次调用之前必须取消之前的任务,这样才不会延迟执行。这是我使用 Handler
和 Runnable
的代码。我如何使用 Kotlin 做到这一点 Coroutines
?
val runnable = java.lang.Runnable {
....
}
val handler = Handler()
private fun myFunction() {
handler.removeCallbacks(runnable)// This is important
handler.postDelayed(runnable, 3000)
}
您可以定义一个Job
并取消它:
private var job: Job? = null
private fun myFunction() {
job?.cancel()
job = scope.launch(ioDispatcher) {
delay(3000)
...
}
}
我是科特林的新手 Coroutines
。我定义了一个 Runnable
并在函数中使用 Handler
延迟调用它。重要的是在每次调用之前必须取消之前的任务,这样才不会延迟执行。这是我使用 Handler
和 Runnable
的代码。我如何使用 Kotlin 做到这一点 Coroutines
?
val runnable = java.lang.Runnable {
....
}
val handler = Handler()
private fun myFunction() {
handler.removeCallbacks(runnable)// This is important
handler.postDelayed(runnable, 3000)
}
您可以定义一个Job
并取消它:
private var job: Job? = null
private fun myFunction() {
job?.cancel()
job = scope.launch(ioDispatcher) {
delay(3000)
...
}
}