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

За счет чего возможна асинхронность в Python

Асинхронность в Python достигается за счет:

  1. Event Loop - центральный механизм, управляющий выполнением корутин и переключением между ними
  2. Корутины (async/await) - специальные функции, которые могут приостанавливать выполнение
  3. Future/Task - объекты, представляющие результат асинхронной операции

Пример:

python
import asyncio

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

async def main():
    task1 = asyncio.create_task(fetch_data())
    task2 = asyncio.create_task(fetch_data())
    await task1
    await task2

asyncio.run(main())

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

  • Не блокирует поток выполнения (в отличие от синхронного кода)
  • Использует кооперативную многозадачность (корутины добровольно отдают контроль)
  • Эффективен для I/O-bound операций
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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