У мене є Python
код:
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()
який працює добре. Однак MAX_PROCESSES
є змінною і може мати будь-яке значення між 1
і 512
. Оскільки я запускаю цей код лише на машині з 8
ядрами, мені потрібно з’ясувати, чи можна обмежити кількість процесів, дозволених для запуску одночасно. Я вивчав multiprocessing.Queue
, але це не схоже на те, що мені потрібно - або, можливо, я неправильно трактую документи.
Чи є спосіб обмежити кількість одночасних multiprocessing.Process
запусків?