Skip to content

术语表

术语解释
async functionasync def 定义的函数,也叫 coroutine function
coroutine object调用 async function 后得到的对象,函数体尚未执行
awaitable可以放在 await 后面的对象
Future一个以后会填入结果的对象,可能成功、失败或被取消
Task交给事件循环运行的 coroutine,也可以被 await 等结果
event loop事件循环,负责安排 callback、Task、timer 和 I/O 谁先运行
callback被事件循环调用的普通函数
Handlecall_soon() 等 API 返回或内部使用的 callback 句柄
TimerHandle定时 callback 句柄
ready queue当前可以运行的 callback 队列
selectorPython 用来等待 socket 可读可写的接口,具体等待交给操作系统
cooperative scheduling协程走到 await 时主动停下,让事件循环去跑别的任务
cancellation取消请求,通常会让 Task 在下一个等待点抛出 CancelledError
structured concurrency把一组子任务放进一个明确的代码块里,退出时一起收尾
TaskGroupasyncio 里管理一组相关 Task 的工具
ExceptionGroupPython 3.11 引入的异常组,用于同时表达多个异常
StreamReaderawait 从网络连接里读数据的对象
StreamWriterwrite()drain() 往网络连接写数据的对象
drain等待写缓冲降到可继续写的流控点
backpressure背压,下游慢时让上游暂停,避免无限堆积
Queue异步队列,用于生产者消费者写法
Semaphore信号量,用于限制并发数量
debug modeasyncio 调试模式,用于发现慢 callback、忘记 await、线程误用等问题
blocking call阻塞调用,会占住事件循环线程
executor用线程池或进程池运行同步函数的工具
Transport/Protocolcallback 风格的网络接口,通常是框架作者才会直接用

面向学习目的的 Python asyncio 中文教程与 mini_asyncio 教学运行时。