繁体   English   中英

Python 即使在父进程死亡后如何保持子进程存活..?

[英]Python How to keep child process alive even after parent process dies..?

import sys, subprocess, os

path = 'child.exe path'
args = [path]
subprocess.Popen(args, creationflags=subprocess.DETACHED_PROCESS | subprocess.CREATE_NEW_PROCESS_GROUP)
sys.exit()

我运行了这个脚本,child.exe 死于脚本。 它甚至看起来不像是被处决的。 脚本死后是否可以让 child.exe 保持活力? 我正在使用 Python 3.9.7。

我发现一种方法可能不好但有效。

subprocess.run(args) # not popen not shell=true
sys.exit()

subprocess.run()阻塞线程直到子进程结束,同时,子进程杀死父进程。 如果我为subprocess.run()设置shell=True ,它就不起作用。 如果您有好的方法,请告诉我。 这是在 windows 10、python 397 上测试的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM