Встречается на собеседованиях • сегодня
Как устроен механизм работы корутин
Корутины (сопрограммы) в Python — это специальные функции, которые могут приостанавливать своё выполнение и возобновлять его позже, сохраняя состояние между вызовами. Они работают на основе генераторов и управляются циклом событий (event loop).
Основные особенности:
- Используют
async/awaitсинтаксис. - Выполняются в одном потоке, но позволяют эффективно работать с I/O-bound задачами.
- Управляются event loop'ом, который решает, когда переключаться между корутинами.
Пример:
python
import asyncio
async def example_coroutine():
print("Start")
await asyncio.sleep(1) # Приостановка выполнения
print("End")
asyncio.run(example_coroutine()) # Запуск корутиныКак это работает:
- При вызове
async defсоздаётся корутина (не выполняется сразу). awaitпередаёт управление обратно в event loop, пока ожидаемая операция (например,asyncio.sleep) не завершится.- Event loop запускает другие корутины, пока текущая приостановлена.
- Когда операция завершается, выполнение корутины возобновляется.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы