Встречается на собеседованиях • сегодня
Можно ли управлять переключением потоков в Python
В Python управление переключением потоков (thread switching) напрямую невозможно из-за Global Interpreter Lock (GIL). GIL позволяет выполняться только одному потоку за раз, даже в многопоточных приложениях. Однако можно влиять на поведение потоков косвенно:
- Приоритеты потоков: Python не поддерживает нативные приоритеты потоков, но можно использовать
threadingс задержками или синхронизацией. - Sleep:
time.sleep(0)может вызвать переключение контекста. - Синхронизация: Использование
Lock,Event,Conditionдля управления порядком выполнения.
Пример:
python
import threading
def worker():
print("Поток начал работу")
# Принудительное переключение
threading._sleep(0.1)
print("Поток завершил работу")
t = threading.Thread(target=worker)
t.start()
t.join()Для реального параллелизма лучше использовать multiprocessing или асинхронность (asyncio).

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы