asyncio — Асинхронное ввод-вывод
asyncio — это библиотека для написания конкурентного кода с использованием синтаксиса async/await.
asyncio используется в качестве основы для нескольких асинхронных фреймворков Python, которые обеспечивают высокопроизводительные сетевые и веб-серверы, библиотеки подключения к базам данных, распределённые очереди задач и т. д.
asyncio часто идеально подходит для кода, связанного с вводом-выводом и высокоуровневым структурированным сетевым кодом.
asyncio предоставляет набор высокоуровневых API для:
- выполнения задач Python параллельно и полным управлением их выполнением;
- выполнения сетевого ввода-вывода и IPC;
- управления подпроцессами;
- распределения задач через очереди;
- синхронизации конкурентного кода;
Кроме того, существуют низкоуровневые API для разработчиков библиотек и фреймворков для:
- создания и управления циклами событий, которые предоставляют асинхронные API для сетевого программирования, запуска подпроцессов, обработки сигналов ОС и т. д.;
- реализации эффективных протоколов с использованием транспортов;
- моста между библиотеками и кодом на основе обратных вызовов и синтаксисом async/await.
Доступность: не WASI.
Этот модуль не работает или недоступен на WebAssembly. Для получения дополнительной информации см. платформы WebAssembly.
asyncio REPL
Вы можете поэкспериментировать с asyncio контекстом параллельности в REPL:
$ 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'
Вызывает событие аудита cpython.run_stdin без аргументов.
Изменено в версии 3.12.5: (также 3.11.10, 3.10.15, 3.9.20 и 3.8.20) Выпускает события аудита.
Изменено в версии 3.13: Использует PyREPL, если это возможно, в этом случае также выполняется PYTHONSTARTUP. Выпускает события аудита.
Справочник
Высокоуровневые API
Низкоуровневые API
Руководства и учебные пособия
Примечание
Исходный код asyncio можно найти в Lib/asyncio/.
© 2001–2024 Python Software Foundation
Licensed under the PSF License.
https://docs.python.org/3.13/library/asyncio.html