高階 API 索引

此頁面列出了所有啟用 async/await 的高階 asyncio API。

任務

執行 asyncio 程式、建立任務以及帶超時等待多個事項的實用工具。

run()

建立事件迴圈,執行協程,關閉迴圈。

Runner

一個上下文管理器,簡化了多個非同步函式呼叫。

Task

任務物件。

TaskGroup

一個上下文管理器,用於儲存一組任務。提供了一種方便可靠的方式來等待組中所有任務完成。

create_task()

啟動一個 asyncio 任務,然後返回它。

current_task()

返回當前任務。

all_tasks()

返回事件迴圈中所有尚未完成的任務。

await sleep()

睡眠若干秒。

await gather()

併發排程和等待事項。

await wait_for()

帶超時執行。

await shield()

免受取消。

await wait()

監視完成。

timeout()

帶超時執行。適用於 wait_for 不合適的情況。

to_thread()

在單獨的作業系統執行緒中非同步執行函式。

run_coroutine_threadsafe()

從另一個作業系統執行緒排程協程。

for in as_completed()

for 迴圈監視完成。

示例:

佇列

佇列應用於在多個 asyncio 任務之間分配工作、實現連線池和釋出/訂閱模式。

佇列

先進先出 (FIFO) 佇列。

PriorityQueue

一個優先佇列。

LifoQueue

一個後進先出 (LIFO) 佇列。

示例:

子程序

生成子程序和執行 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

高階 async/await 物件,用於接收網路資料。

StreamWriter

高階 async/await 物件,用於傳送網路資料。

示例:

同步

可在任務中使用的類執行緒同步原語。

一個互斥鎖。

事件

一個事件物件。

條件

一個條件物件。

訊號量

一個訊號量。

有界訊號量

一個有界訊號量。

屏障

一個 barrier 物件。

示例:

異常

asyncio.CancelledError

當任務被取消時引發。另請參閱 Task.cancel()

asyncio.BrokenBarrierError

當 Barrier 被破壞時引發。另請參閱 Barrier.wait()

示例: