Встречается на собеседованиях • сегодня
Как работает многопроцессность в Python
В Python многопроцессорность реализуется через модуль multiprocessing, который создает отдельные процессы с собственным интерпретатором и памятью. Это обходит GIL (Global Interpreter Lock), позволяя использовать несколько ядер CPU.
Пример:
python
from multiprocessing import Process
def worker(num):
print(f'Процесс {num} запущен')
if name == 'main':
processes = []
for i in range(3):
p = Process(target=worker, args=(i,))
processes.append(p)
p.start()
text
for p in processes:
p.join()text
Ключевые особенности:
1. Каждый процесс имеет собственное пространство памяти
2. Обмен данными между процессами требует специальных механизмов (Queue, Pipe, shared memory)
3. Создание процессов дороже, чем потоков
4. Идеально подходит для CPU-задач, но не для I/O-bound задач
Для управления процессами часто используют `Pool`:
```python
from multiprocessing import Pool
def square(x):
return x * x
with Pool(4) as p:
print(p.map(square, [1, 2, 3, 4]))
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы