Встречается на 1% собеседований по Python
Какие есть особенности у процессов и потоков в Python
В Python процессы и потоки имеют ключевые различия из-за GIL (Global Interpreter Lock):
Потоки:
- Используют общую память (легко обмениваются данными)
- GIL ограничивает выполнение только одного потока за раз (CPU-bound задачи не ускоряются)
- Подходят для I/O-bound задач (ожидание сети/диска)
- Меньшие накладные расходы на создание
python
import threading
def worker():
print("Thread working")
t = threading.Thread(target=worker)
t.start()Процессы:
- Полностью изолированы (требуют спец. механизмов для обмена данными)
- Не ограничены GIL (параллельное выполнение CPU-bound задач)
- Большие накладные расходы на создание
- Требуют больше памяти
python
from multiprocessing import Process
def worker():
print("Process working")
p = Process(target=worker)
p.start()Для CPU-bound задач лучше multiprocessing, для I/O-bound - threading. Для современных задач часто используют concurrent.futures или asyncio.

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