Execute vários arquivos .py ao mesmo tempo
Eu tenho três arquivos .py que eu quero rodar ao mesmo tempo em um arquivo de script Python. Eu inicialmente ligueisubprocess.call()
três vezes (uma vez para cada arquivo .py), mas lembrou que bloqueia até que o comando seja concluído. eu tenteisubprocess.Popen(['screen', 'python_file'])
desde que eu acredito que não bloqueia, mas quando eu estava verificando os processos comscreen -ls
havia apenas um processo em execução. Como faço para que todos os três programas sejam executados ao mesmo tempo com um script Python? Eu deveria estar usando omultiprocessing
oumultithreading
biblioteca?
Edit: Os outros processos não devem terminar, pois estão rodando em um loop infinito. Aqui está exatamente o que eu tinha no meu arquivo de script Python. estou a usarscreen
porque cada arquivo .py tem stdout logado no terminal e eu quero ser capaz de ver o que está sendo registrado para cada um.
subprocess.Popen(['screen', './submitter.py'])
subprocess.Popen(['screen', './worker.py'])
subprocess.Popen(['screen', './tester.py'])