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

Какую проблему решает асинхронность в Python

Асинхронность в Python решает проблему эффективного выполнения I/O-bound операций (сетевые запросы, работа с файлами, БД), когда традиционные синхронные подходы приводят к простою потока в ожидании ответа. Вместо блокировки, асинхронный код переключается на другие задачи, пока ждёт завершения операции.

Пример с asyncio:

python
import asyncio

async def fetch_data():
    await asyncio.sleep(2)  # Имитация долгого запроса
    return "Данные"

async def main():
    task = asyncio.create_task(fetch_data())
    print("Делаем что-то ещё...")
    data = await task  # Не блокируем поток
    print(data)

asyncio.run(main())

Ключевые преимущества:

  • Экономия ресурсов (1 поток вместо нескольких)
  • Масштабируемость (тысячи одновременных соединений)
  • Читаемость кода (явное управление переключениями)

Не подходит для CPU-bound задач — там лучше использовать многопроцессорность.

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

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

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

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