führen Sie mehrere Instanzen von python-Skript gleichzeitig
Ich versuche zu erstellen 86 Instanzen task.py gleichzeitig laufen lassen.
import sys
import subprocess
for file in range(86):
subprocess.call([sys.executable,'task.py',str(file)+'in.csv',str(filen)+'out.csv'])
- Was ist das problem?
- das problem war "Teilprozess.Anruf wartet auf den Befehl zu vervollständigen. Verwenden Teilprozess.Popen statt:"
Du musst angemeldet sein, um einen Kommentar abzugeben.
Unterprozess.rufen Sie
wartet auf den Befehl zu vervollständigen. VerwendenUnterprozess.Popen
statt:out =subprocess.Popen("hugo server -D", stdout = subprocess.PIPE)
outputs.append(out)
Und dann die Iteration über die Ausgänge und die Berufungoutput.wait()
. Es öffnet sich das erste Programm, dann aber nicht öffnen Sie die nächste ein, es sei denn ich schließe das erste Programm."hugo server -D"
->['hugo', 'server', '-D']
. Wenn das nicht funktioniert, poste bitte eine eigene Frage, so dass andere können Sie Sie beantworten.https://stackoverflow.com/questions/57466534/cant-launch-multiple-local-servers-using-subprocess-in-python