本篇解析 example-context-03.kt。学习如何看清协程的运行轨迹。
1. 核心技巧:打印线程名
在异步开发中,我们通过 Thread.currentThread().name 来确认当前代码跑在哪个线程上。
2. 协程调试模式
如果在 JVM 参数中开启了 -Dkotlinx.coroutines.debug,线程名中会自动附带协程的编号(如 [main @coroutine#1])。
3. 开发者感悟
调试协程时,最怕的就是“迷路”。由于协程会频繁在不同线程间挂起和恢复,养成在日志中打印线程名 and 协程 ID 的习惯,能帮你快速定位并发竞争或死锁问题。