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

Знаешь ли что-нибудь про асинхронность

Асинхронность в Python позволяет выполнять задачи без блокировки основного потока, используя механизмы asyncio, корутины и async/await.

Ключевые моменты:

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

Пример:

python
import asyncio

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

async def main():
    await asyncio.gather(fetch_data(), fetch_data())  # Параллельное выполнение

asyncio.run(main())

Плюсы:

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

Ограничения:

  • Не подходит для CPU-bound задач (нужны процессы или threading).
  • Требует поддержки библиотек (например, aiohttp вместо requests).
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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