asyncio
— Асинхронный ввод/вывод¶
asyncio - это библиотека для написания конкурентного кода с использованием синтаксиса async/await.
asyncio используется как основа для множества асинхронных фреймворков Python, которые обеспечивают высокопроизводительные сетевые и веб-серверы, библиотеки подключения к базам данных, распределенные очереди задач и т.д.
asyncio часто идеально подходит для связанного с IO и высокоуровневого структурированного сетевого кода.
asyncio предоставляет набор высокоуровневых API для:
run Python coroutines параллельно и имеют полный контроль над их выполнением;
выполнить network IO and IPC;
управление subprocesses;
распределять задания через queues;
synchronize одновременный код;
Кроме того, существуют низкоуровневые API для разработчиков библиотек и фреймворков:
создавать и управлять event loops, которые предоставляют асинхронные API для
networking
, запускаsubprocesses
, обработкиOS signals
и т.д;реализовывать эффективные протоколы с использованием transports;
bridge библиотеки на основе обратного вызова и код с синтаксисом async/await.
Ссылка
Примечание
Исходный код для asyncio можно найти в Lib/asyncio/.