Uso de multiprocesamiento. Proceso con un número máximo de procesos simultáneos.
TengoPython
código:
from multiprocessing import Process
def f(name):
print 'hello', name
if __name__ == '__main__':
for i in range(0, MAX_PROCESSES):
p = Process(target=f, args=(i,))
p.start()
que funciona bien Sin embargo,MAX_PROCESSES
es variable y puede ser cualquier valor entre1
y512
. Ya que solo estoy ejecutando este código en una máquina con8
Cores, necesito averiguar si es posible limitar el número de procesos que se pueden ejecutar al mismo tiempo. He mirado enmultiprocessing.Queue
, pero no se parece a lo que necesito, o tal vez estoy interpretando los documentos de manera incorrecta.
¿Hay una manera de limitar el número de simultáneasmultiprocessing.Process
s corriendo?