windows 7 cmd espera por processos paralelos

0

Eu estou tentando executar vários scripts python paralelos no windows 7 (e 10).
Estou executando todos eles de outro script python que executa mais funções nos arquivos que os scripts estão editando.
Eu quero que o script externo aguarde até que os outros scripts sejam executados em cmd.

Eu tentei start / w , mas isso fez com que cada script aguardasse antes de fechar a janela cmd.

essencialmente o que eu quero fazer é python esperar até que os 3 processos sejam feitos. o último script é apenas uma impressão ("feito") e não faz sentido para todos os cuidados.
isso é importante para mim resolver com 3 processos, porque eu preciso fazer a mesma coisa com 30 (em um servidor, há bastante tópicos disponíveis)

este é o comando cmd que estou tentando executar.

os.system("start python node1.py & start python node2.py & start python node3.py && start /w printstatement.py")

alguma sugestão?

    
por Dror Bogin 05.01.2018 / 10:01

1 resposta

0

resolvido com ajuda usando o módulo nativo de python subprocess e com a ajuda da comunidade stachoverflow .

import subprocess;
procs = [subprocess.Popen(['python', 'node{}.py'.format(n)]) for n in range(1, 4)];
rets = [p.wait() for p in procs]

Agradeço a todos vocês pelo tempo.

    
por 05.01.2018 / 13:04