高層級(jí) API 索引?

這個(gè)頁面列舉了所有能用于 async/wait 的高層級(jí)asyncio API 集。

任務(wù)?

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

run()

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

create_task()

啟動(dòng)一個(gè)asyncio的Task對(duì)象。

await sleep()

休眠幾秒。

await gather()

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

await wait_for()

有超時(shí)控制的運(yùn)行。

await shield()

屏蔽取消操作

await wait()

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

current_task()

返回當(dāng)前Task對(duì)象

all_tasks()

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

Task

Task對(duì)象

to_thread()

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

run_coroutine_threadsafe()

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

for in as_completed()

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

例子

隊(duì)列集?

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

Queue

先進(jìn)先出隊(duì)列

PriorityQueue

優(yōu)先級(jí)隊(duì)列。

LifoQueue

后進(jìn)先出隊(duì)列。

例子

子進(jìn)程集?

用于生成子進(jìn)程和運(yùn)行shell命令的工具包。

await create_subprocess_exec()

創(chuàng)建一個(gè)子進(jìn)程。

await create_subprocess_shell()

運(yùn)行一個(gè)shell命令。

例子

?

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

await open_connection()

建立一個(gè)TCP連接。

await open_unix_connection()

建立一個(gè)Unix socket連接。

await start_server()

啟動(dòng)TCP服務(wù)。

await start_unix_server()

啟動(dòng)一個(gè) Unix 套接字服務(wù)。

StreamReader

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

StreamWriter

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

例子

同步?

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

Lock

互斥鎖。

Event

事件對(duì)象。

Condition

條件對(duì)象

Semaphore

信號(hào)量

BoundedSemaphore

有界的信號(hào)量。

Barrier

A barrier object.

例子

異常?

asyncio.CancelledError

當(dāng)一個(gè)Task對(duì)象被取消的時(shí)候被引發(fā)。請參閱 Task.cancel()。

asyncio.BrokenBarrierError

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

例子