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. |
run_coroutine_threadsafe() |
Schedule a coroutine from another OS thread. |
for in as_completed() |
Monitor for completion with a for loop. |
Examples
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
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.