当父进程在python中终止时如何避免进程终止
Posted
技术标签:
【中文标题】当父进程在python中终止时如何避免进程终止【英文标题】:How to avoid process termination when parent process terminates in python 【发布时间】:2014-06-22 19:27:06 【问题描述】:我有一个在 linux 上运行的 python 守护程序。我正在实现以这种方式工作的自动更新功能:
-
检测到新版本时,应用会使用 subprocess.call 调用更新程序脚本。
子进程(实际上是更新脚本)停止守护进程
由于守护程序已停止,更新程序脚本也会终止:/
所以我的问题是如何以不依赖于父进程的方式启动更新程序脚本。换句话说,我不希望父进程终止导致子进程终止。
环境:Linux mint 16
Python 3.3
谢谢
【问题讨论】:
看看***.com/questions/473620/…和pypi.python.org/pypi/daemonize。 【参考方案1】:你可以按照以下方式做一些事情:
from subprocess import Popen
updater = ['/usr/bin/python', 'PATH TO/updater_script.py', '&']
Popen(updater)
更新程序不会受到守护进程关闭的影响。
【讨论】:
谢谢,但没用。父进程停止时子进程终止:( 我已经更新了我对可能有用的东西的回答......它看起来有点老套,但可能值得一试。 我也试过了。它也没有帮助。我发现的唯一方法是守护子进程。对于一个简单的任务来说,这有点开销,但它确实有效。还是谢谢 我很高兴你找到了解决方案,奇怪的是我发布的方法在测试程序中起作用......以上是关于当父进程在python中终止时如何避免进程终止的主要内容,如果未能解决你的问题,请参考以下文章