Назад к вопросам
СБЕР Центр ИИ
Junior — Middle
69
Какая компонента управляет переключением между задачами в библиотеке asyncio?
Компании, где спрашивали
Ответ от нейросети
sobes.tech AI
В библиотеке asyncio в Python переключением между задачами управляет цикл событий (event loop). Это центральный компонент, который планирует, запускает и переключает выполнение асинхронных задач (корутин).
Event loop отслеживает, когда задачи готовы к выполнению (например, когда завершена операция ввода-вывода), и переключается между ними, обеспечивая асинхронное и неблокирующее выполнение.
Пример использования event loop:
import asyncio
async def task(name):
print(f"Задача {name} стартовала")
await asyncio.sleep(1)
print(f"Задача {name} завершена")
async def main():
await asyncio.gather(task('A'), task('B'))
asyncio.run(main())
Здесь event loop управляет переключением между задачами task('A') и task('B'), позволяя им выполняться параллельно без блокировок.