Я пытаюсь запустить несколько exe-файлов (12 из них), поскольку из-за ресурсов компьютера я могу создать максимум 4 за раз, прежде чем получу снижение производительности.
Я пытаюсь выяснить, есть ли способ вызывать 4 exe'а за раз и, как только один из них заканчивает, вызывать другого exe, чтобы заполнить ресурсы, которые высвободились
Мой текущий код делает это:
excs = [r"path\to\exe\exe.exe",r"path\to\exe\exe.exe",r"path\to\exe\exe.exe",r"path\to\exe\exe.exe"]
running = [subprocess.Popen(ex) for ex in excs]
[process.wait() for process in running]
Он повторяет этот процесс три раза, чтобы выполнить все 12. К сожалению, это означает, что ему нужно дождаться завершения всех из них, прежде чем перейти к следующему набору. Есть ли более эффективный способ сделать это?
Для справки, все исполняемые файлы имеют разное время выполнения.