高级 API 索引 — Python 文档
来自菜鸟教程
Python/docs/3.10/library/asyncio-api-index
高级 API 索引
此页面列出了所有启用 async/await 的高级 asyncio API。
任务
用于运行 asyncio 程序、创建任务和等待多个带有超时的事物的实用程序。
run()
|
创建事件循环,运行协程,关闭循环。 |
create_task()
|
启动 asyncio 任务。 |
await sleep()
|
睡眠几秒钟。 |
await gather()
|
同时安排和等待事情。 |
await wait_for()
|
超时运行。 |
await shield()
|
避免取消。 |
await wait()
|
监控完成。 |
current_task()
|
返回当前任务。 |
all_tasks()
|
返回事件循环的所有任务。 |
Task
|
任务对象。 |
to_thread()
|
在单独的操作系统线程中异步运行函数。 |
run_coroutine_threadsafe()
|
从另一个 OS 线程调度协同程序。 |
for in as_completed()
|
监视 for 循环的完成情况。
|
例子
队列
队列应该用于在多个异步任务之间分配工作、实现连接池和发布/订阅模式。
Queue
|
一个先进先出队列。 |
PriorityQueue
|
一个优先队列。 |
LifoQueue
|
LIFO 队列。 |
例子
- 使用 asyncio.Queue 在多个任务之间分配工作负载 。
- 另请参阅 队列文档页面 。
子流程
用于生成子进程和运行 shell 命令的实用程序。
await create_subprocess_exec()
|
创建子流程。 |
await create_subprocess_shell()
|
运行 shell 命令。 |
例子
流
用于处理网络 IO 的高级 API。
await open_connection()
|
建立 TCP 连接。 |
await open_unix_connection()
|
建立 Unix 套接字连接。 |
await start_server()
|
启动 TCP 服务器。 |
await start_unix_server()
|
启动一个 Unix 套接字服务器。 |
StreamReader
|
用于接收网络数据的高级异步/等待对象。 |
StreamWriter
|
发送网络数据的高级异步/等待对象。 |
例子
同步
可以在任务中使用的类似线程的同步原语。
Lock
|
互斥锁。 |
Event
|
一个事件对象。 |
Condition
|
一个条件对象。 |
Semaphore
|
一个信号量。 |
BoundedSemaphore
|
有界信号量。 |
例子
- 使用 asyncio.Event。
- 另请参阅 asyncio 同步原语 的文档。
例外
asyncio.TimeoutError
|
由 wait_for() 等函数在超时时引发。 请记住,asyncio.TimeoutError 与内置的 TimeoutError 异常 无关 。
|
asyncio.CancelledError
|
取消任务时引发。 另见 Task.cancel()。 |
例子
- 处理 CancelledError 以在取消请求时运行代码 。
- 另请参阅 特定于异步的异常 的完整列表。