2016-07-16 1 views
0

나는 파이썬 스크립트 myscript를 가지고 있는데, GUI를 사용하여 실행할 때 "열려 있습니다". 나는로 myscripf이 같은 두 번 실행 파이썬 스크립트를 작성하고 싶습니다 :파이썬 스크립트는 비동기식으로 두 개의 다른 파이썬 스크립트를 실행합니다.

bash>python runNTimes.py 2 

을 나는 runNTimes.py

import subprocess 
for i in range(int(sys.argv[1])): 
    subprocess.call(['python', 'myscript.py']) 

문제에 대한 다음 코드는 이것이 내가 시작하면 즉, 동 기적으로 발생한다는 것이다있다 첫 번째 서브 프로세스 첫 번째 서브 프로세스가 시작될 때까지 두 번째 서브 프로세스가 실행되지 않습니다..

myscript.py에 대한 최소한의 예 :

try: 
     import Tkinter as tk # for Python2 
except: 
     import tkinter as tk # for Python3 

win=tk.Tk() 
win.mainloop() 
+0

통화 블록을하지 않습니다,는 popen을 사용 –

+0

@PadraicCunningham 당신이 내 닌자를 이길 편집 –

답변

1

사용는 popen 대신 : call() 블록 Popen()

from subprocess import Popen 
import sys 
for i in range(int(sys.argv[1])): 
    Popen(['python', 'synccall1.py']) 

synccall1.py

try: 
     import Tkinter as tk # for Python2 
except: 
     import tkinter as tk # for Python3 

win=tk.Tk() 
win.mainloop() 
관련 문제