본문 바로가기
파이썬

파이썬 Run Process and Don't Wait

by º기록 2020. 11. 10.
반응형

프로세스를 실행하고 돌아올 때까지 기다리지 않고 싶습니다. 다음과 같은 P_NOWAIT 및 하위 프로세스로 생성을 시도했습니다.

app = "C:\Windows\Notepad.exe"
file = "C:\Path\To\File.txt"

pid = subprocess.Popen([app, file], shell=True, stdin=subprocess.PIPE, stdout=subprocess.PIPE).pid

그러나 콘솔 창은 메모장을 닫을 때까지 남아 있습니다. 프로세스를 시작하고 완료 될 때까지 기다리지 않을 수 있습니까?

 

해결 방법

 

이 호출은 자식 프로세스가 종료 될 때까지 기다리지 않습니다 (Linux에서). close_fds 가 무엇을하는지 묻지 마세요. 몇 년 전에 코드를 작성했습니다. (BTW : subprocess.Popen 문서는 혼란 스럽습니다, IMHO.)

proc = Popen([cmd_str], shell=True,
             stdin=None, stdout=None, stderr=None, close_fds=True)

수정 :


 

참조 페이지 https://stackoverflow.com/questions/3516007

 

 

반응형

댓글