Встречается на собеседованиях • сегодня
Какие знаешь параметры переключения между потоками
В Python параметры переключения между потоками (thread switching) контролируются GIL (Global Interpreter Lock) и системным планировщиком. Основные моменты:
- GIL – только один поток исполняет байт-код Python в любой момент времени. Переключение происходит:
- При I/O операциях (чтение файлов, сетевые запросы)
- По истечении тиков (ticks) – условных инструкций (по умолчанию 100 тиков, но зависит от версии Python и
sys.setcheckinterval()в Python 2 /sys.setswitchinterval()в Python 3).
sys.setswitchinterval(sec)– задает интервал переключения между потоками (по умолчанию 5 мс в Python 3). Чем меньше интервал, тем чаще переключения, но выше накладные расходы.
Пример:
python
import sys
import threading
sys.setswitchinterval(0.001) # Установка интервала в 1 мс
def worker():
print("Поток выполняется")
threads = [threading.Thread(target=worker) for _ in range(5)]
for t in threads:
t.start()
for t in threads:
t.join()
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы