> **Источник:** https://python-all.ru/3.16/library/asyncio-api-index.html
>
> «Документация Python на русском» – неофициальный перевод официальной документации Python: версии от 2.6 до 3.16, полнотекстовый поиск, английский оригинал рядом с переводом. Эта Markdown-версия страницы предназначена для работы с LLM: вставьте её в ChatGPT, Claude или Cursor.

---

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

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

## Задачи

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

| [`run()`](https://python-all.ru/3.16/library/asyncio-runner.html#asyncio.run) | Создать цикл событий, запустить корутину, закрыть цикл. |
| --- | --- |
| [`Runner`](https://python-all.ru/3.16/library/asyncio-runner.html#asyncio.Runner) | Менеджер контекста, упрощающий несколько асинхронных вызовов функций. |
| [`Task`](https://python-all.ru/3.16/library/asyncio-task.html#asyncio.Task) | Объект задачи. |
| [`TaskGroup`](https://python-all.ru/3.16/library/asyncio-task.html#asyncio.TaskGroup) | Менеджер контекста, содержащий группу задач. Предоставляет удобный и надёжный способ дождаться завершения всех задач в группе. |
| [`create_task()`](https://python-all.ru/3.16/library/asyncio-task.html#asyncio.create_task) | Запускает задачу asyncio и возвращает её. |
| [`current_task()`](https://python-all.ru/3.16/library/asyncio-task.html#asyncio.current_task) | Возвращает текущую задачу. |
| [`all_tasks()`](https://python-all.ru/3.16/library/asyncio-task.html#asyncio.all_tasks) | Возвращает все ещё не завершённые задачи для цикла событий. |
| `await` [`sleep()`](https://python-all.ru/3.16/library/asyncio-task.html#asyncio.sleep) | Приостановить выполнение на заданное число секунд. |
| `await` [`gather()`](https://python-all.ru/3.16/library/asyncio-task.html#asyncio.gather) | Планировать и ожидать несколько событий одновременно. |
| `await` [`wait_for()`](https://python-all.ru/3.16/library/asyncio-task.html#asyncio.wait_for) | Запуск с тайм-аутом. |
| `await` [`shield()`](https://python-all.ru/3.16/library/asyncio-task.html#asyncio.shield) | Защита от отмены. |
| `await` [`wait()`](https://python-all.ru/3.16/library/asyncio-task.html#asyncio.wait) | Ожидание завершения. |
| [`timeout()`](https://python-all.ru/3.16/library/asyncio-task.html#asyncio.timeout) | Запуск с тайм-аутом. Полезно в случаях, когда `wait_for` не подходит. |
| [`to_thread()`](https://python-all.ru/3.16/library/asyncio-task.html#asyncio.to_thread) | Асинхронный запуск функции в отдельном потоке ОС. |
| [`run_coroutine_threadsafe()`](https://python-all.ru/3.16/library/asyncio-task.html#asyncio.run_coroutine_threadsafe) | Запланировать корутину из другого потока ОС. |
| `for in` [`as_completed()`](https://python-all.ru/3.16/library/asyncio-task.html#asyncio.as_completed) | Ожидание завершения с циклом `for`. |

Примеры

- [Использование asyncio.gather() для параллельного выполнения](https://python-all.ru/3.16/library/asyncio-task.html#asyncio-example-gather).
- [Использование asyncio.wait\_for() для принудительного тайм-аута](https://python-all.ru/3.16/library/asyncio-task.html#asyncio-example-waitfor).
- [Отмена](https://python-all.ru/3.16/library/asyncio-task.html#asyncio-example-task-cancel).
- [Использование asyncio.sleep()](https://python-all.ru/3.16/library/asyncio-task.html#asyncio-example-sleep).
- См. также основную [страницу документации по задачам](https://python-all.ru/3.16/library/asyncio-task.html#coroutine).

## Очереди

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

| [`Queue`](https://python-all.ru/3.16/library/asyncio-queue.html#asyncio.Queue) | Очередь FIFO. |
| --- | --- |
| [`PriorityQueue`](https://python-all.ru/3.16/library/asyncio-queue.html#asyncio.PriorityQueue) | Очередь с приоритетом. |
| [`LifoQueue`](https://python-all.ru/3.16/library/asyncio-queue.html#asyncio.LifoQueue) | Очередь LIFO. |

Примеры

- [Использование asyncio.Queue для распределения нагрузки между несколькими задачами](https://python-all.ru/3.16/library/asyncio-queue.html#asyncio-example-queue-dist).
- См. также [страницу документации по очередям](https://python-all.ru/3.16/library/asyncio-queue.html#asyncio-queues).

## Подпроцессы

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

| `await` [`create_subprocess_exec()`](https://python-all.ru/3.16/library/asyncio-subprocess.html#asyncio.create_subprocess_exec) | Создание подпроцесса. |
| --- | --- |
| `await` [`create_subprocess_shell()`](https://python-all.ru/3.16/library/asyncio-subprocess.html#asyncio.create_subprocess_shell) | Выполнение команды оболочки. |

Примеры

- [Выполнение команды оболочки](https://python-all.ru/3.16/library/asyncio-subprocess.html#asyncio-example-subprocess-shell).
- См. также [документацию по API подпроцессов](https://python-all.ru/3.16/library/asyncio-subprocess.html#asyncio-subprocess) .

## Потоки данных

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

| `await` [`open_connection()`](https://python-all.ru/3.16/library/asyncio-stream.html#asyncio.open_connection) | Установка TCP-соединения. |
| --- | --- |
| `await` [`open_unix_connection()`](https://python-all.ru/3.16/library/asyncio-stream.html#asyncio.open_unix_connection) | Установка соединения через Unix-сокет. |
| `await` [`start_server()`](https://python-all.ru/3.16/library/asyncio-stream.html#asyncio.start_server) | Запуск TCP-сервера. |
| `await` [`start_unix_server()`](https://python-all.ru/3.16/library/asyncio-stream.html#asyncio.start_unix_server) | Запуск сервера Unix-сокетов. |
| [`StreamReader`](https://python-all.ru/3.16/library/asyncio-stream.html#asyncio.StreamReader) | Высокоуровневый async/await-объект для приёма сетевых данных. |
| [`StreamWriter`](https://python-all.ru/3.16/library/asyncio-stream.html#asyncio.StreamWriter) | Высокоуровневый async/await-объект для отправки сетевых данных. |

Примеры

- [Пример TCP-клиента](https://python-all.ru/3.16/library/asyncio-stream.html#asyncio-example-stream).
- См. также [документацию по API потоков данных](https://python-all.ru/3.16/library/asyncio-stream.html#asyncio-streams) .

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

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

| [`Lock`](https://python-all.ru/3.16/library/asyncio-sync.html#asyncio.Lock) | Блокировка мьютекс. |
| --- | --- |
| [`Event`](https://python-all.ru/3.16/library/asyncio-sync.html#asyncio.Event) | Объект события. |
| [`Condition`](https://python-all.ru/3.16/library/asyncio-sync.html#asyncio.Condition) | Объект условия. |
| [`Semaphore`](https://python-all.ru/3.16/library/asyncio-sync.html#asyncio.Semaphore) | Семафор. |
| [`BoundedSemaphore`](https://python-all.ru/3.16/library/asyncio-sync.html#asyncio.BoundedSemaphore) | Ограниченный семафор. |
| [`Barrier`](https://python-all.ru/3.16/library/asyncio-sync.html#asyncio.Barrier) | Объект барьера. |

Примеры

- [Использование asyncio.Event](https://python-all.ru/3.16/library/asyncio-sync.html#asyncio-example-sync-event).
- [Использование asyncio.Barrier](https://python-all.ru/3.16/library/asyncio-sync.html#asyncio-example-barrier).
- См. также документацию asyncio [примитивов синхронизации](https://python-all.ru/3.16/library/asyncio-sync.html#asyncio-sync).

## Исключения

| [`asyncio.CancelledError`](https://python-all.ru/3.16/library/asyncio-exceptions.html#asyncio.CancelledError) | Возникает при отмене задачи. См. также [`Task.cancel()`](https://python-all.ru/3.16/library/asyncio-task.html#asyncio.Task.cancel). |
| --- | --- |
| [`asyncio.BrokenBarrierError`](https://python-all.ru/3.16/library/asyncio-sync.html#asyncio.BrokenBarrierError) | Возникает при нарушении Barrier. См. также [`Barrier.wait()`](https://python-all.ru/3.16/library/asyncio-sync.html#asyncio.Barrier.wait). |

Примеры

- [Обработка CancelledError для выполнения кода при запросе отмены](https://python-all.ru/3.16/library/asyncio-task.html#asyncio-example-task-cancel).
- См. также полный список [специфических исключений asyncio](https://python-all.ru/3.16/library/asyncio-exceptions.html#asyncio-exceptions).
