Встречается на собеседованиях • сегодня

Что такое Event Loop

Event Loop — это механизм, который позволяет Python (в частности, asyncio) выполнять асинхронный код, управляя выполнением задач, корутин и обратных вызовов. Он работает в одном потоке, переключаясь между задачами при возникновении операций ввода-вывода или других ожиданий.

Пример:

python
import asyncio

async def task(name, delay):
    print(f"{name} started")
    await asyncio.sleep(delay)
    print(f"{name} finished")

async def main():
    await asyncio.gather(
        task("Task 1", 2),
        task("Task 2", 1),
    )

asyncio.run(main())

Как работает:

  1. Event Loop запускает main().
  2. При await asyncio.sleep() управление возвращается в цикл, который переключается на другую задачу.
  3. По истечении времени сна цикл возобновляет выполнение.

Без Event Loop асинхронный код был бы невозможен, так как некому было бы управлять переключением между задачами.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы