破解 Kotlin 协程(0):前言

最近我因缘际会写了闲话 Swift 协程渡劫 C++ 协程系列文章来介绍 Swift 协程和 C++ 协程,写完之后又把它们整理成电子书的形式发布了出来。破解 Kotlin 协程系列文章自然也可以成为其中的一员。

这份前言是 2022 年后补的,文章则主要是 2019 年基于 Kotlin 1.3 撰写的。随着 Kotlin 协程的快速迭代,这些文章中的有些内容已经过时,读者需要在阅读的过程中自行甄别。

Kotlin 1.3 是在 2018 年底发布的,随着 Kotlin 协程框架的正式发布,Kotlin 官方也终于把语言层面的协程特性扶正了。协程即便在现在也不能算是一个特别容易上手的特性,更何况当时官方自己的文档还一塌糊涂呢。基于当时的情况,我持续地写了十几篇文章来介绍 Kotlin 协程的相关特性以及框架的使用,这也就是大家即将要看到的破解 Kotlin 协程系列文章了。

这些文章的撰写并不容易,因为所有的知识来源基本上就是 Kotlin 标准库和 Kotlin 协程库的源码。你甚至可以想象到那时候官方源码当中的注释都有可能是错的,我也几次向 Kotlin 协程库提了 issue。

这些文章后来也成为我在 2020 年出版的《深入理解 Kotlin 协程》一书的第六章的主要内容基础。

说明 如果你想要深入了解 Kotlin 协程的运行机制和实现细节,建议直接阅读《深入理解 Kotlin 协程》,书中对 Kotlin 协程的原理和实现做了详细的剖析和介绍,甚至带着读者还一步一步完成了一个简化版的协程框架。


关于作者

霍丙乾 bennyhuo,Google 开发者专家(Kotlin 方向);《深入理解 Kotlin 协程》 作者(机械工业出版社,2020.6);《深入实践 Kotlin 元编程》 作者(机械工业出版社,2023.8);移动客户端工程师,先后就职于腾讯地图、猿辅导、腾讯视频。