0
我無法在等待終止的情況下同時啓動多個進程。在無需等待的情況下啓動python中的多個進程
我正在遍歷目錄,然後在外部腳本中處理文件的內容。
命令行執行看起來像以下:
python process.py < /dir/file
這裏是Python代碼
for root, directory, file in os.walk(dir):
for name in file:
input_file = open(os.path.join(root, name))
input_text = input_file.read().encode('utf-8')
input_file.close()
command = "python process.py"
process = subprocess.Popen(command.split(), shell=False, stdin=subprocess.PIPE)
process.stdin.write(input_text)
log.debug("Process started with pid {0}".format(process.pid))
process.communicate()
一些樣本是否有任何的方式開始他們無需等待終止?
如果我把所有processessess放在列表上,但是你有什麼辦法控制正在運行的進程的數量,我的意思是如果我有50個文件需要處理,但是我一次只需要10個文件? – user2847238 2015-03-03 08:29:50
google「python multiprocessing」 – 2015-03-03 08:39:03
謝謝,經過一番爭鬥,我找到了解決方案,如何從Pool運行進程。仍然沒有管理如何在Pool上進行懶惰迭代。 – user2847238 2015-03-03 13:20:24