GUI와 작업자 스레드의 두 가지 스레드를 실행하는 Tkinter GUI가 있습니다. 작업자 스레드는 다음 코드를 사용하여 하위 프로세스를 만듭니다단위 테스트를 즉시 실행하는 파이썬 하위 프로세스를 중지하는 방법은 무엇입니까? Terminate and kill not working
파일 runTests.py 몇 가지 설정을 수행 한 후 다음 명령을 사용하여 단위 테스트 파일을 실행합니다myProcess = subprocess.Popen(['python', '-u', 'runTests.py'],
stdout=subprocess.PIPE,
stderr=subprocess.STDOUT)
:
execfile('myUnitTests.py')
파일 myUnitTests.py을 몇 가지 단위 테스트를 수행하여 실행하는 데 5 분 이상 걸립니다. GUI에서 테스트 실행을 중지하기 위해 버튼을 클릭합니다. 이 차례로 작업자 스레드가 서브 프로세스 중지 신호를 전송하게 : 현재 단위 테스트가 수행을 완료 한 후이 프로세스를 종료 할 때까지
myProcess.terminate()
종료 명령을 즉시 프로세스를 중지하지 않습니다 기다린다? os.kill
을 사용하려했지만 terminate()
과 같은 결과가 나옵니다.
내 프로그램의 응답 속도를 향상시켜 서브 프로세스를 즉시 종료시킬 수있는 방법에 대한 아이디어는 무엇입니까?
는