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

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

EventLoop — это механизм, который управляет выполнением асинхронного кода, обрабатывая события, колбэки и задачи в одном потоке. В Python он реализован в модуле asyncio.

Основные принципы:

  1. Цикл событий постоянно проверяет очередь задач.
  2. При await текущая задача приостанавливается, и цикл переключается на другую.
  3. Когда операция завершается (например, I/O), цикл возобновляет ожидающую задачу.

Пример:

python
import asyncio

async def task1():
    print("Start task1")
    await asyncio.sleep(1)
    print("End task1")

async def task2():
    print("Start task2")
    await asyncio.sleep(2)
    print("End task2")

async def main():
    await asyncio.gather(task1(), task2())

asyncio.run(main())

Вывод:

text
Start task1
Start task2
End task1
End task2

EventLoop позволяет эффективно выполнять I/O-bound операции без блокировки потока.

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

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

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

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