问题
I am trying to create 86 instances of task.py to run simultaneously.
import sys
import subprocess
for file in range(86):
subprocess.call([sys.executable,'task.py',str(file)+'in.csv',str(filen)+'out.csv'])
回答1:
subprocess.call waits for command to complete. Use subprocess.Popen instead:
import sys
import subprocess
procs = []
for i in range(86):
proc = subprocess.Popen([sys.executable, 'task.py', '{}in.csv'.format(i), '{}out.csv'.format(i)])
procs.append(proc)
for proc in procs:
proc.wait()
来源:https://stackoverflow.com/questions/19156467/run-multiple-instances-of-python-script-simultaneously