高層級 API 索引?

這個頁面列舉了所有能用于 async/wait 的高層級asyncio API 集。

任務?

運行異步程序,創(chuàng)建Task對象,等待多件事運行超時的公共集。

run()

創(chuàng)建事件循環(huán),運行一個協(xié)程,關閉事件循環(huán)。

create_task()

啟動一個asyncio的Task對象。

await sleep()

休眠幾秒。

await gather()

并發(fā)執(zhí)行所有事件的調(diào)度和等待。

await wait_for()

有超時控制的運行。

await shield()

屏蔽取消操作

await wait()

完成情況的監(jiān)控器

current_task()

返回當前Task對象

all_tasks()

返回事件循環(huán)中所有的task對象。

Task

Task對象

to_thread()

在不同的 OS 線程中異步地運行一個函數(shù)。

run_coroutine_threadsafe()

從其他OS線程中調(diào)度一個協(xié)程。

for in as_completed()

for 循環(huán)監(jiān)控完成情況。

例子

隊列集?

隊列集被用于多個異步Task對象的運行調(diào)度,實現(xiàn)連接池以及發(fā)布/訂閱模式。

Queue

先進先出隊列

PriorityQueue

優(yōu)先級隊列。

LifoQueue

后進先出隊列。

例子

子進程集?

用于生成子進程和運行shell命令的工具包。

await create_subprocess_exec()

創(chuàng)建一個子進程。

await create_subprocess_shell()

運行一個shell命令。

例子

?

用于網(wǎng)絡IO處理的高級API集。

await open_connection()

建立一個TCP連接。

await open_unix_connection()

建立一個Unix socket連接。

await start_server()

啟動TCP服務。

await start_unix_server()

啟動一個 Unix 套接字服務。

StreamReader

接收網(wǎng)絡數(shù)據(jù)的高級async/await對象。

StreamWriter

發(fā)送網(wǎng)絡數(shù)據(jù)的高級async/await對象。

例子

同步?

能被用于Task對象集的,類似線程的同步基元組件。

Lock

互斥鎖。

Event

事件對象。

Condition

條件對象

Semaphore

信號量

BoundedSemaphore

有界的信號量。

Barrier

A barrier object.

例子

異常?

asyncio.CancelledError

當一個Task對象被取消的時候被引發(fā)。請參閱 Task.cancel()

asyncio.BrokenBarrierError

Raised when a Barrier is broken. See also Barrier.wait().

例子