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

Что такое вытесняющая многозадачность

Вытесняющая (preemptive) многозадачность — это подход, при котором операционная система сама решает, когда переключаться между задачами, принудительно забирая процессорное время у текущей задачи. В отличие от кооперативной многозадачности, где задачи сами передают управление, здесь переключение контролируется планировщиком ОС.

Пример в Python с потоками (threading), где ОС управляет переключением:

python
import threading
import time

def task(name):
    for i in range(3):
        print(f"{name} выполняется")
        time.sleep(1)

thread1 = threading.Thread(target=task, args=("Поток 1",))
thread2 = threading.Thread(target=task, args=("Поток 2",))

thread1.start()
thread2.start()

thread1.join()
thread2.join()

Ключевые особенности:

  • Планировщик ОС решает, когда переключать потоки
  • Не требует явного освобождения управления (как yield в кооперативной)
  • Потоки могут прерываться в любой точке выполнения
  • Позволяет эффективно использовать CPU при I/O-bound задачах
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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