第9章 轻量级线程:协程
在常用的并发模型中,多进程、多线程、分布式是最普遍的,不过近些年来逐渐有一些语言以first-class或者library的形式提供对基于协程的并发模型的支持。其中比较典型的有Scheme、Lua、Python、Perl、Go等以first-class的方式提供对协程的支持。
同样地,Kotlin也支持协程。
本章我们主要介绍:
- 什么是协程
- 协程的用法实例
- 挂起函数
- 通道与管道
- 协程的实现原理
-
coroutine库等
- 9.2 桥接 阻塞和非阻塞
- 9.3 等待一个任务执行完毕
- 9.4 协程是轻量级的
- 9.5 协程 vs 守护线程
- 9.6 协程执行的取消
- 9.7 设置协程超时时间
- 9.8 挂起函数的组合执行
- 9.9 协程上下文与调度器
- 9.10 通道
- 9.11 管道
- 9.12 构建无穷惰性序列
- 9.13 协程与线程比较
- 9.14 协程的好处
- 9.15 协程的内部机制
- 本章小结
