本篇解析 example-context-01.kt。学习如何指定协程运行的线程环境。
1. 核心概念:调度器 (Dispatchers)
调度器决定了协程在哪个线程或线程池中执行。
常见的调度器:
- **不传参数 (默认)**:继承父协程的上下文。如果在
runBlocking中,通常是主线程。 - Dispatchers.Unconfined:非受限调度器,在调用者线程启动。
- Dispatchers.Default:默认调度器,用于计算密集型任务。
- newSingleThreadContext:为协程创建一个全新的专有线程。
2. 开发者感悟
调度器就像是协程的“发动机”。在 Android 中,最核心的技能就是:用 Dispatchers.IO 去加载数据,加载完后通过 Dispatchers.Main 切回主线程刷新界面。