如何从当前应用程序运行独立应用程序?

时间:2010-12-23 14:43:56

标签: python process

我有一个用python编写的GUI应用程序。 GUI启动后,它应该运行独立守护进程。但是,如果我关闭GUI或它崩溃,守护进程也会退出。有没有办法独立地从另一个应用程序运行一个应用程序?

2 个答案:

答案 0 :(得分:2)

在Linux下,我通过拥有父进程(在你的情况下是GUI)来处理这个问题,通过subprocess或os.system启动第二个python进程。第二个过程立即守护自己。为此,请参阅herehere

答案 1 :(得分:1)

虽然我没有启动守护进程,但我有一个pygtk程序,它使用subprocess.Popen()启动另一个程序,shell = True。例如:

import subprocess

def callback(self, widget, date=None):
    cmd = "Your command here"
    other_process = subprocess.Popen(cmd, shell=True)

由于这是一个附加到按钮的回调,pygtk会在单击按钮时处理事情。即使我关闭了最初的pygtk gui程序,第二个程序仍在运行。 FWIW,这是在CentOS Linux系统上。

我曾经用TkInter做了类似的事情,但是现在没有那个代码可供我使用。那是在Windows XP系统上。我的回忆是第二个过程在第一个过程停止后继续运行。