Встречается на 1% собеседований по Python
Как устроен механизм работы корутин
Корутины (сопрограммы) в 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
интервью вопросы и ответы