[英]Python: Exiting python.exe after Popen?
小問題:
我有一個按預期方式運行的python腳本,但當我選擇菜單選項以Popen另一個python腳本時除外:
myPath = r"c:\Python27\myScript.py"
cmd = r"c:\Python27\python.exe '{}'".format(myPath)
py_process = Popen(cmd, stdout=PIPE, stdin=PIPE, stderr=STDOUT)
當我運行該代碼段(在Windows中)時,子進程將按預期在后台啟動,但是當我嘗試退出主腳本,但讓子進程在后台運行時:
raise SystemExit
...一個空窗口“ c:\\ python27 \\ python.exe”仍然存在。 我試過其他EXIT方法,結果相似。 注意:當我不運行該代碼段而退出主腳本時,python窗口將根據需要消失。
我的目標是在所有情況下都退出主腳本后不留下任何跟蹤/窗口,但子進程應仍在后台運行。
有什么建議可以實現這個目標?
謝謝!
如果要先與已啟動的進程進行通信,然后再讓它繼續運行,則有幾種選擇:
它不會創建“一個完全獨立的進程”(python-daemon包會這樣做)。 在其他情況下,您應該重定向到os.devnull子級的stdin / stdout / stderr,以避免等待終端的輸入和/或虛假輸出
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.