High-level API Index — Python documentation
From Get docs
Python/docs/3.9/library/asyncio-api-index
High-level API Index
This page lists all high-level async/await enabled asyncio APIs.
Tasks
Utilities to run asyncio programs, create Tasks, and await on multiple things with timeouts.
run()
|
Create event loop, run a coroutine, close the loop. |
create_task()
|
Start an asyncio Task. |
await sleep()
|
Sleep for a number of seconds. |
await gather()
|
Schedule and wait for things concurrently. |
await wait_for()
|
Run with a timeout. |
await shield()
|
Shield from cancellation. |
await wait()
|
Monitor for completion. |
current_task()
|
Return the current Task. |
all_tasks()
|
Return all tasks for an event loop. |
Task
|
Task object. |
to_thread()
|
Asychronously run a function in a separate OS thread. |
run_coroutine_threadsafe()
|
Schedule a coroutine from another OS thread. |
for in as_completed()
|
Monitor for completion with a for loop.
|
Examples
- Using asyncio.gather() to run things in parallel.
- Using asyncio.wait_for() to enforce a timeout.
- Cancellation.
- Using asyncio.sleep().
- See also the main Tasks documentation page.
Queues
Queues should be used to distribute work amongst multiple asyncio Tasks, implement connection pools, and pub/sub patterns.
Queue
|
A FIFO queue. |
PriorityQueue
|
A priority queue. |
LifoQueue
|
A LIFO queue. |
Examples
- Using asyncio.Queue to distribute workload between several Tasks.
- See also the Queues documentation page.
Subprocesses
Utilities to spawn subprocesses and run shell commands.
await create_subprocess_exec()
|
Create a subprocess. |
await create_subprocess_shell()
|
Run a shell command. |
Examples
- Executing a shell command.
- See also the subprocess APIs documentation.
Streams
High-level APIs to work with network IO.
await open_connection()
|
Establish a TCP connection. |
await open_unix_connection()
|
Establish a Unix socket connection. |
await start_server()
|
Start a TCP server. |
await start_unix_server()
|
Start a Unix socket server. |
StreamReader
|
High-level async/await object to receive network data. |
StreamWriter
|
High-level async/await object to send network data. |
Examples
- Example TCP client.
- See also the streams APIs documentation.
Synchronization
Threading-like synchronization primitives that can be used in Tasks.
Lock
|
A mutex lock. |
Event
|
An event object. |
Condition
|
A condition object. |
Semaphore
|
A semaphore. |
BoundedSemaphore
|
A bounded semaphore. |
Examples
- Using asyncio.Event.
- See also the documentation of asyncio synchronization primitives.
Exceptions
asyncio.TimeoutError
|
Raised on timeout by functions like wait_for() . Keep in mind that asyncio.TimeoutError is unrelated to the built-in TimeoutError exception.
|
asyncio.CancelledError
|
Raised when a Task is cancelled. See also Task.cancel(). |
Examples
- Handling CancelledError to run code on cancellation request.
- See also the full list of asyncio-specific exceptions.