Указатель API высокого уровня

На этой странице перечислены все высокоуровневые API async/await, поддерживающие asyncio.

Задачи

Утилиты для запуска программ asyncio, создания Задач и ожидания нескольких действий с таймаутами.

run()

Создайте цикл событий, запустите coroutine, закройте цикл.

Runner

Менеджер контекста, упрощающий многократные вызовы асинхронных функций.

Task

Объект задания.

TaskGroup

Менеджер контекста, в котором хранится группа задач. Предоставляет удобный и надежный способ дождаться завершения всех задач в группе.

create_task()

Запускает задачу asyncio Task, а затем возвращает ее.

current_task()

Возвращает текущую задачу.

all_tasks()

Возвращает все задачи, которые еще не завершены для цикла событий.

await sleep()

Поспите несколько секунд.

await gather()

Планируйте и ожидайте одновременно.

await wait_for()

Запуск с тайм-аутом.

await shield()

Щит от отмены.

await wait()

Проследите за завершением работы.

timeout()

Запуск с таймаутом. Полезно в случаях, когда wait_for не подходит.

to_thread()

Асинхронный запуск функции в отдельном потоке ОС.

run_coroutine_threadsafe()

Запланируйте выполнение coroutine из другого потока ОС.

for in as_completed()

Следите за завершением работы с помощью цикла for.

Примеры

Очереди

Очереди следует использовать для распределения работы между несколькими Asyncio Tasks, реализации пулов соединений и шаблонов pub/sub.

Queue

Очередь FIFO.

PriorityQueue

Приоритетная очередь.

LifoQueue

Очередь LIFO.

Примеры

Подпроцессы

Утилиты для запуска подпроцессов и команд командной строки.

await create_subprocess_exec()

Создайте подпроцесс.

await create_subprocess_shell()

Выполните команду оболочки.

Примеры

Потоки

Высокоуровневые API для работы с сетевыми IO.

await open_connection()

Установите TCP-соединение.

await open_unix_connection()

Установите соединение с сокетом Unix.

await start_server()

Запустите сервер TCP.

await start_unix_server()

Запустите сервер сокетов Unix.

StreamReader

Высокоуровневый объект async/await для получения сетевых данных.

StreamWriter

Высокоуровневый объект async/await для отправки сетевых данных.

Примеры

Синхронизация

Примитивы синхронизации, похожие на потоки, которые можно использовать в задачах.

Lock

Мьютексная блокировка.

Event

Объект события.

Condition

Объект условия.

Semaphore

Семафор.

BoundedSemaphore

Ограниченный семафор.

Barrier

Барьерный объект.

Примеры

Исключения

asyncio.CancelledError

Возникает при отмене задачи. См. также Task.cancel().

asyncio.BrokenBarrierError

Поднимается при разрушении барьера. См. также Barrier.wait().

Примеры