Junior — Middle
85
Koje se metode koriste za paralelno izvršavanje zadataka na višeprocessorskim sistemima?
Компаније где су питане
LuckyGroup
Диджитал сектор
Одговор од АИ
sobes.tech АИ
Параллельное выполнение задач на многопроцессорных системах в Python реализуется несколькими способами:
-
Модуль multiprocessing — позволяет создавать процессы, которые запускаются параллельно и не ограничены GIL (Global Interpreter Lock). Это эффективный способ для CPU-bound задач.
-
Потоки (threading) — подходят для I/O-bound задач, так как в Python из-за GIL потоки не выполняются параллельно на нескольких ядрах.
-
Модуль concurrent.futures — предоставляет удобный интерфейс для запуска задач в потоках (
ThreadPoolExecutor) или процессах (ProcessPoolExecutor).
Пример использования multiprocessing:
from multiprocessing import Pool
def f(x):
return x * x
if __name__ == '__main__':
with Pool(4) as p:
results = p.map(f, [1, 2, 3, 4, 5])
print(results) # [1, 4, 9, 16, 25]