簡體   English   中英

腳本結束時不要終止 python 子進程

[英]Do NOT terminate python subprocess when script ends

我已經看到了大量與此相反的問題,我覺得這很奇怪,因為我無法阻止我的子進程關閉,但是有沒有辦法調用 subprocess.Popen 並確保它的進程在調用 python 腳本后保持運行退出?

我的代碼如下:

dname = os.path.dirname(os.path.abspath(__file__))
script = '{}/visualizerUI.py'.format(dname)
self.proc = subprocess.Popen(['python', script, str(width), str(height), str(pixelSize)], stdout=subprocess.PIPE)

這可以很好地打開該過程,但是當我關閉腳本時(因為它完成或使用 Ctrl+C),它也會關閉 VisualizerUI.py 子進程,但我希望它保持打開狀態。 或者至少可以選擇。

我錯過了什么?

刪除stdout=subprocess.PIPE<\/strong>並添加shell=True<\/strong>以便它在可以分離的子shell中生成。

"

另一種選擇是使用:

import os
os.system("start python %s %s %s %s" % (script, str(width), str(height), str(pixelSize)))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM