Встречается на собеседованиях • сегодня
Как устроен механизм async/await в Python
Механизм async/await в Python основан на корутинах (coroutines) и цикле событий (event loop).
Корутины — это специальные функции, объявленные через async def. При вызове они возвращают объект корутины, а не выполняются сразу.
Await приостанавливает выполнение корутины, пока ожидаемая операция (обычно I/O) не завершится, но не блокирует поток.
Event loop управляет выполнением корутин, переключаясь между ними при ожидании.
Пример:
python
import asyncio
async def fetch_data():
print("Начало загрузки")
await asyncio.sleep(2) # Имитация I/O
print("Данные загружены")
return "Результат"
async def main():
task = asyncio.create_task(fetch_data())
print("Делаем что-то параллельно")
result = await task
print(f"Получено: {result}")
asyncio.run(main())Ключевые моменты:
asyncопределяет корутину.awaitпередает управление обратно в event loop.- Для запуска используется
asyncio.run(). - Не блокирующие вызовы (например,
asyncio.sleep) позволяют эффективно использовать ресурсы.

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