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

Что такое Async/Await

Async/await — это синтаксический сахар для работы с асинхронным кодом в Python, позволяющий писать его в стиле синхронного.

  • async объявляет функцию корутиной (асинхронной).
  • await приостанавливает выполнение корутины, пока не завершится ожидаемая операция (например, I/O).

Работает на основе цикла событий (event loop), но не блокирует поток.

Пример:

python
import asyncio

async def fetch_data():
    print("Начало загрузки...")
    await asyncio.sleep(2)  # Имитация долгой операции
    print("Данные загружены")
    return "Результат"

async def main():
    task = asyncio.create_task(fetch_data())
    print("Делаем что-то параллельно...")
    result = await task
    print(f"Получено: {result}")

asyncio.run(main())

Ключевое отличие от потоков:

  • Нет накладных расходов на переключение контекста.
  • Позволяет эффективно работать с I/O-bound задачами (сеть, файлы).

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

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

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

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

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