Встречается на собеседованиях • сегодня
Есть ли опыт использования процессов
Да, работал с процессами через модуль multiprocessing. Основные моменты:
- Создание процессов через
Process:
python
from multiprocessing import Process
def worker():
print("Процесс выполнен")
if __name__ == "__main__":
p = Process(target=worker)
p.start()
p.join()- Обмен данными через
QueueилиPipe:
python
from multiprocessing import Queue
q = Queue()
q.put("Сообщение")
print(q.get()) # Выведет "Сообщение"- Пул процессов для параллельных задач:
python
from multiprocessing import Pool
def square(x):
return x * x
with Pool(4) as p:
print(p.map(square, [1, 2, 3])) # [1, 4, 9]Нюансы:
if __name__ == "__main__"обязателен для Windows.- Процессы используют больше ресурсов, чем потоки, но избегают GIL.
- IPC (межпроцессное взаимодействие) сложнее, чем с потоками.

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