Встречается на 1% собеседований по Python
За счет чего получается прирост производительности при использовании async/await в Python
Async/await в Python даёт прирост производительности за счёт неблокирующего выполнения операций ввода-вывода (I/O-bound задач). Вместо ожидания завершения операции (например, запроса к БД или HTTP-запроса), корутина освобождает поток, позволяя event loop'у выполнять другие задачи.
Пример:
python
import asyncio
async def fetch_data():
await asyncio.sleep(1) # Имитация I/O операции
return "Данные"
async def main():
task1 = asyncio.create_task(fetch_data())
task2 = asyncio.create_task(fetch_data())
await asyncio.gather(task1, task2) # Выполняются конкурентно
asyncio.run(main())Ключевые моменты:
- Эффективен для I/O-bound задач (сетевые запросы, работа с файлами).
- Не требует многопоточности (избегает GIL и накладных расходов на переключение потоков).
- Event loop управляет выполнением корутин, минимизируя простои.
Для CPU-bound задач async/await не даёт преимуществ — тут лучше multiprocessing.

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