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

Какие знаешь механизмы асинхронности

В Python есть несколько механизмов асинхронности:

  1. Потоки (threading)
    Используют GIL, подходят для I/O-bound задач.

    python
    import threading
    def task(): print("Hello from thread")
    thread = threading.Thread(target=task)
    thread.start()
  2. Процессы (multiprocessing)
    Обходят GIL, хороши для CPU-bound задач.

    python
    from multiprocessing import Process
    def task(): print("Hello from process")
    p = Process(target=task)
    p.start()
  1. Asyncio
    Корутины с async/await, однопоточная модель.

    python
    import asyncio
    async def task(): print("Hello from coroutine")
    asyncio.run(task())
  2. Генераторы
    Могут использоваться для кооперативной многозадачности через yield.

  3. Callback-based подходы
    Например, в Twisted или Tornado.

Ключевые отличия:

  • Потоки/процессы — параллелизм (preemptive)
  • Asyncio — конкурентность (cooperative)
  • Процессы имеют раздельную память, потоки — общую
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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