Junior — Middle
116
¿Qué métodos se utilizan para la ejecución paralela de tareas en sistemas multiprocesador?
Empresas donde se preguntó
LuckyGroup
Диджитал сектор
Respuesta de la IA
sobes.tech AI
Параллельное выполнение задач на многопроцессорных системах в 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]