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

По какому принципу ОС переключает потоки

ОС использует вытесняющую многозадачность (preemptive multitasking), где планировщик (scheduler) решает, когда переключиться между потоками. Основные триггеры:

  1. Истечение кванта времени – поток исчерпал выделенный CPU-квант.
  2. Блокирующие операции – поток ожидает I/O (ввод/вывод), семафор и т.д.
  3. Приоритеты – высокоприоритетный поток вытесняет низкоприоритетный.
  4. Системные прерывания – например, аппаратные прерывания (клавиатура, таймер).

Пример на Python (потоки конкурируют за CPU):

python
import threading

def worker():
    while True:
        print(threading.current_thread().name)

t1 = threading.Thread(target=worker, name="Thread-1")
t2 = threading.Thread(target=worker, name="Thread-2")
t1.start()
t2.start()

Здесь ОС автоматически переключает потоки, даже если они не явно отпускают управление (через time.sleep() или I/O).

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

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

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

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