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

---

# [`asyncio`](https://python-all.ru/3.10/library/asyncio.html#module-asyncio) – Асинхронный ввод-вывод

---

Привет, мир!

```python
import asyncio

async def main():
    print('Hello ...')
    await asyncio.sleep(1)
    print('... World!')

asyncio.run(main())
```

asyncio – это библиотека для написания **конкурентного** кода с использованием синтаксиса **async/await**.

asyncio используется как основа для нескольких асинхронных фреймворков Python, которые предоставляют высокопроизводительные сетевые и веб-серверы, библиотеки подключения к базам данных, распределённые очереди задач и т.д.

asyncio часто отлично подходит для задач, связанных с вводом-выводом, и высокоуровневого **структурированного** сетевого кода.

asyncio предоставляет набор **высокоуровневых** API для:

- [запуска корутин Python](https://python-all.ru/3.10/library/asyncio-task.html#coroutine) конкурентно и полного контроля над их выполнением;
- выполнения [сетевого ввода-вывода и IPC](https://python-all.ru/3.10/library/asyncio-stream.html#asyncio-streams);
- управления [подпроцессами](https://python-all.ru/3.10/library/asyncio-subprocess.html#asyncio-subprocess);
- распределения задач через [очереди](https://python-all.ru/3.10/library/asyncio-queue.html#asyncio-queues);
- [синхронизации](https://python-all.ru/3.10/library/asyncio-sync.html#asyncio-sync) конкурентного кода;

Кроме того, существуют **низкоуровневые** API для *разработчиков библиотек и фреймворков*, чтобы:

- создавать и управлять [циклами событий](https://python-all.ru/3.10/library/asyncio-eventloop.html#asyncio-event-loop), которые предоставляют асинхронные API для [`networking`](https://python-all.ru/3.10/library/asyncio-eventloop.html#asyncio.loop.create_server), запуска [`subprocesses`](https://python-all.ru/3.10/library/asyncio-eventloop.html#asyncio.loop.subprocess_exec), обработки [`OS signals`](https://python-all.ru/3.10/library/asyncio-eventloop.html#asyncio.loop.add_signal_handler) и т.д.;
- реализации эффективных протоколов с помощью [транспортов](https://python-all.ru/3.10/library/asyncio-protocol.html#asyncio-transports-protocols);
- [связывания](https://python-all.ru/3.10/library/asyncio-future.html#asyncio-futures) библиотек и кода на основе колбэков с синтаксисом async/await.

asyncio REPL

Можно поэкспериментировать с `asyncio` конкурентным контекстом в REPL:

```pycon
$ python -m asyncio
asyncio REPL ...
Use "await" directly instead of "asyncio.run()".
Type "help", "copyright", "credits" or "license" for more information.
>>> import asyncio
>>> await asyncio.sleep(10, result='hello')
'hello'
```

Возбуждает [событие аудита](https://python-all.ru/3.10/library/sys.html#auditing) `cpython.run_stdin` без аргументов.

Изменено в версии 3.10.15: (также 3.9.20 и 3.8.20) Генерирует события аудита.

Справочные материалы

API высокого уровня

- [Корутины и задачи](https://python-all.ru/3.10/library/asyncio-task.html)
- [Потоки данных](https://python-all.ru/3.10/library/asyncio-stream.html)
- [Примитивы синхронизации](https://python-all.ru/3.10/library/asyncio-sync.html)
- [Подпроцессы](https://python-all.ru/3.10/library/asyncio-subprocess.html)
- [Очереди](https://python-all.ru/3.10/library/asyncio-queue.html)
- [Исключения](https://python-all.ru/3.10/library/asyncio-exceptions.html)

API низкого уровня

- [Цикл событий](https://python-all.ru/3.10/library/asyncio-eventloop.html)
- [Future](https://python-all.ru/3.10/library/asyncio-future.html)
- [Транспорты и протоколы](https://python-all.ru/3.10/library/asyncio-protocol.html)
- [Политики](https://python-all.ru/3.10/library/asyncio-policy.html)
- [Поддержка платформ](https://python-all.ru/3.10/library/asyncio-platforms.html)

Руководства и учебные пособия

- [Индекс API высокого уровня](https://python-all.ru/3.10/library/asyncio-api-index.html)
- [Индекс API низкого уровня](https://python-all.ru/3.10/library/asyncio-llapi-index.html)
- [Разработка с asyncio](https://python-all.ru/3.10/library/asyncio-dev.html)

> **Примечание**
>
> Исходный код asyncio можно найти в [Lib/asyncio/](https://python-all.ru/src/3.10/Lib/asyncio).
