Я хочу запустить несколько процессов в цикле, но, поскольку они довольно долго заканчиваются, я думал, что лучше запустить их параллельно. Все эти процессы независимы, т. Е. Они не зависят от результата друг друга. Вот небольшой пример, который иллюстрирует тип цикла я имею дело с:Параллельные независимые процессы
inDir = '/path/to/your/dir/'
inTxtList = ['a.txt','b.txt','c.txt','d.txt','e.txt']
for i in inTxtList:
myfile = open(i,'w')
myfile.write("This is a text file written in python\n")
myfile.close()
Я попытался multiprocessing
пакет и придумать следующий код:
import multiprocessing
def worker(num):
"""thread worker function"""
myfile = open(num,'w')
myfile.write("This is my first text file written in python\n")
myfile.close()
return
if __name__ == '__main__':
jobs = []
for i in inTxtList:
p = multiprocessing.Process(target=worker, args=(inDir+i,))
jobs.append(p)
p.start()
p.join()
Это на самом деле работает но я не знаю, как установить количество рабочих. Не могли бы вы мне помочь?