文章目录
- 一、取消Kotlin协程中的CPU密集型任务
- 1.1 为什么无法取消?
- 1.2 如何使其可取消?
- 1.2.1 使用 isActive 检查协程是否仍然活跃
- 1.2.2 ensureAlive
- 1.2.3 引入yield函数
- 1.3 总结
一、取消Kotlin协程中的CPU密集型任务
1.1 为什么无法取消?
下面代码并没有取消
import kotlinx.coroutines.*fun main() = runBlocking {val startTime = System.curre