协程指南
Kotlin 仅在标准库中提供最基本底层 API 以便其他库能够利用协程。与许多其他具有类似功能的语言不同,async
与 await
在 Kotlin 中并不是关键字,甚至都不是标准库的一部分。此外,Kotlin 的 挂起函数 概念为异步操作提供了比 future 与 promise 更安全、更不易出错的抽象。
kotlinx.coroutines
是由 JetBrains 开发的功能丰富的协程库。它包含本指南中涵盖的很多启用高级协程的原语,包括 launch
、 async
等等。
本文是关于 kotlinx.coroutines
核心特性的指南,包含一系列示例,并分为不同的主题。
为了使用协程以及按照本指南中的示例演练,需要添加对 kotlinx-coroutines-core
模块的依赖,如项目中的 README 文件所述。
目录
- 协程基础
- Hands-on: Intro to coroutines and channels
- 取消与超时
- 组合挂起函数
- 协程上下文与调度器
- 异步流
- 通道
- 协程异常处理
- 共享的可变状态与并发
- Select 表达式(实验性的)
- Tutorial: Debug coroutines using IntelliJ IDEA
- Tutorial: Debug Kotlin Flow using IntelliJ IDEA