Документация Python неофициальный перевод

asyncio-api-index.md

108 строк · 9.4 КБ · обычная страница · сырой текст · скачать

1> **Источник:** https://python-all.ru/3.10/library/asyncio-api-index.html2>3> «Документация Python на русском» – неофициальный перевод официальной документации Python: версии от 2.6 до 3.16, полнотекстовый поиск, английский оригинал рядом с переводом. Эта Markdown-версия страницы предназначена для работы с LLM: вставьте её в ChatGPT, Claude или Cursor.45---67# Указатель API высокого уровня89На этой странице перечислены все API asyncio высокого уровня с поддержкой async/await.1011## Задачи1213Утилиты для запуска программ asyncio, создания задач и ожидания нескольких событий с тайм-аутами.1415| [`run()`](https://python-all.ru/3.10/library/asyncio-task.html#asyncio.run) | Создать цикл событий, запустить корутину, закрыть цикл. |16| --- | --- |17| [`create_task()`](https://python-all.ru/3.10/library/asyncio-task.html#asyncio.create_task) | Запустить задачу asyncio. |18| `await` [`sleep()`](https://python-all.ru/3.10/library/asyncio-task.html#asyncio.sleep) | Приостановить выполнение на заданное число секунд. |19| `await` [`gather()`](https://python-all.ru/3.10/library/asyncio-task.html#asyncio.gather) | Планировать и ожидать несколько событий одновременно. |20| `await` [`wait_for()`](https://python-all.ru/3.10/library/asyncio-task.html#asyncio.wait_for) | Запуск с тайм-аутом. |21| `await` [`shield()`](https://python-all.ru/3.10/library/asyncio-task.html#asyncio.shield) | Защита от отмены. |22| `await` [`wait()`](https://python-all.ru/3.10/library/asyncio-task.html#asyncio.wait) | Ожидание завершения. |23| [`current_task()`](https://python-all.ru/3.10/library/asyncio-task.html#asyncio.current_task) | Возвращает текущую задачу. |24| [`all_tasks()`](https://python-all.ru/3.10/library/asyncio-task.html#asyncio.all_tasks) | Возвращает все задачи для цикла событий. |25| [`Task`](https://python-all.ru/3.10/library/asyncio-task.html#asyncio.Task) | Объект задачи. |26| [`to_thread()`](https://python-all.ru/3.10/library/asyncio-task.html#asyncio.to_thread) | Асинхронный запуск функции в отдельном потоке ОС. |27| [`run_coroutine_threadsafe()`](https://python-all.ru/3.10/library/asyncio-task.html#asyncio.run_coroutine_threadsafe) | Запланировать корутину из другого потока ОС. |28| `for in` [`as_completed()`](https://python-all.ru/3.10/library/asyncio-task.html#asyncio.as_completed) | Ожидание завершения с циклом `for`. |2930Примеры3132- [Использование asyncio.gather() для параллельного выполнения](https://python-all.ru/3.10/library/asyncio-task.html#asyncio-example-gather).33- [Использование asyncio.wait\_for() для принудительного тайм-аута](https://python-all.ru/3.10/library/asyncio-task.html#asyncio-example-waitfor).34- [Отмена](https://python-all.ru/3.10/library/asyncio-task.html#asyncio-example-task-cancel).35- [Использование asyncio.sleep()](https://python-all.ru/3.10/library/asyncio-task.html#asyncio-example-sleep).36- См. также основную [страницу документации по задачам](https://python-all.ru/3.10/library/asyncio-task.html#coroutine).3738## Очереди3940Очереди следует использовать для распределения работы между несколькими задачами asyncio, реализации пулов соединений и шаблонов издатель-подписчик (pub/sub).4142| [`Queue`](https://python-all.ru/3.10/library/asyncio-queue.html#asyncio.Queue) | Очередь FIFO. |43| --- | --- |44| [`PriorityQueue`](https://python-all.ru/3.10/library/asyncio-queue.html#asyncio.PriorityQueue) | Очередь с приоритетом. |45| [`LifoQueue`](https://python-all.ru/3.10/library/asyncio-queue.html#asyncio.LifoQueue) | Очередь LIFO. |4647Примеры4849- [Использование asyncio.Queue для распределения нагрузки между несколькими задачами](https://python-all.ru/3.10/library/asyncio-queue.html#asyncio-example-queue-dist).50- См. также [страницу документации по очередям](https://python-all.ru/3.10/library/asyncio-queue.html#asyncio-queues).5152## Подпроцессы5354Утилиты для запуска подпроцессов и выполнения команд оболочки.5556| `await` [`create_subprocess_exec()`](https://python-all.ru/3.10/library/asyncio-subprocess.html#asyncio.create_subprocess_exec) | Создание подпроцесса. |57| --- | --- |58| `await` [`create_subprocess_shell()`](https://python-all.ru/3.10/library/asyncio-subprocess.html#asyncio.create_subprocess_shell) | Выполнение команды оболочки. |5960Примеры6162- [Выполнение команды оболочки](https://python-all.ru/3.10/library/asyncio-subprocess.html#asyncio-example-subprocess-shell).63- См. также [документацию по API подпроцессов](https://python-all.ru/3.10/library/asyncio-subprocess.html#asyncio-subprocess) .6465## Потоки данных6667Высокоуровневые API для работы с сетевым вводом-выводом.6869| `await` [`open_connection()`](https://python-all.ru/3.10/library/asyncio-stream.html#asyncio.open_connection) | Установка TCP-соединения. |70| --- | --- |71| `await` [`open_unix_connection()`](https://python-all.ru/3.10/library/asyncio-stream.html#asyncio.open_unix_connection) | Установка соединения через Unix-сокет. |72| `await` [`start_server()`](https://python-all.ru/3.10/library/asyncio-stream.html#asyncio.start_server) | Запуск TCP-сервера. |73| `await` [`start_unix_server()`](https://python-all.ru/3.10/library/asyncio-stream.html#asyncio.start_unix_server) | Запуск сервера Unix-сокетов. |74| [`StreamReader`](https://python-all.ru/3.10/library/asyncio-stream.html#asyncio.StreamReader) | Высокоуровневый async/await-объект для приёма сетевых данных. |75| [`StreamWriter`](https://python-all.ru/3.10/library/asyncio-stream.html#asyncio.StreamWriter) | Высокоуровневый async/await-объект для отправки сетевых данных. |7677Примеры7879- [Пример TCP-клиента](https://python-all.ru/3.10/library/asyncio-stream.html#asyncio-example-stream).80- См. также [документацию по API потоков данных](https://python-all.ru/3.10/library/asyncio-stream.html#asyncio-streams) .8182## Синхронизация8384Примитивы синхронизации, аналогичные используемым в threading, которые можно применять в задачах.8586| [`Lock`](https://python-all.ru/3.10/library/asyncio-sync.html#asyncio.Lock) | Блокировка мьютекс. |87| --- | --- |88| [`Event`](https://python-all.ru/3.10/library/asyncio-sync.html#asyncio.Event) | Объект события. |89| [`Condition`](https://python-all.ru/3.10/library/asyncio-sync.html#asyncio.Condition) | Объект условия. |90| [`Semaphore`](https://python-all.ru/3.10/library/asyncio-sync.html#asyncio.Semaphore) | Семафор. |91| [`BoundedSemaphore`](https://python-all.ru/3.10/library/asyncio-sync.html#asyncio.BoundedSemaphore) | Ограниченный семафор. |9293Примеры9495- [Использование asyncio.Event](https://python-all.ru/3.10/library/asyncio-sync.html#asyncio-example-sync-event).96- См. также документацию asyncio [примитивов синхронизации](https://python-all.ru/3.10/library/asyncio-sync.html#asyncio-sync).9798## Исключения99100| [`asyncio.TimeoutError`](https://python-all.ru/3.10/library/asyncio-exceptions.html#asyncio.TimeoutError) | Возбуждается при тайм-ауте функциями вроде [`wait_for()`](https://python-all.ru/3.10/library/asyncio-task.html#asyncio.wait_for). Имейте в виду, что `asyncio.TimeoutError` **не связано** со встроенным исключением [`TimeoutError`](https://python-all.ru/3.10/library/exceptions.html#TimeoutError). |101| --- | --- |102| [`asyncio.CancelledError`](https://python-all.ru/3.10/library/asyncio-exceptions.html#asyncio.CancelledError) | Возникает при отмене задачи. См. также [`Task.cancel()`](https://python-all.ru/3.10/library/asyncio-task.html#asyncio.Task.cancel). |103104Примеры105106- [Обработка CancelledError для выполнения кода при запросе отмены](https://python-all.ru/3.10/library/asyncio-task.html#asyncio-example-task-cancel).107- См. также полный список [специфических исключений asyncio](https://python-all.ru/3.10/library/asyncio-exceptions.html#asyncio-exceptions).108