2012-07-03 254 views
0

我需要在python中創建一個進程,以允許調用進程在孩子仍在運行時退出。什麼是有效的方法來做到這一點?在python中產生非子進程

注意:我在UNIX環境中運行。

+0

看看這個http://stackoverflow.com/questions/881388/what-is-the-reason-for-performing-a-doublefork-when-creating-a-daemon – gahooa

回答

3

終止父進程不會終止類Unix操作系統中的子進程,所以你不需要做任何特殊的事情。只需啓動子進程subprocess.Popen並終止主進程。 init孤立進程將被自動採用。

+0

我會這樣想的,但無論出於何種原因,直到其他子進程完成時,父進程纔會退出。 有一個PHP文件調用函數,基本上需要啓動這個子進程並快速返回一些信息。 – themcementality

+2

斯文是對的;我用一個包含'p = subprocess.Popen(['/ bin/sleep','60'])''的快速腳本來驗證它。還有其他的東西必須在工作。 – zigg

+2

@themcementality:你有沒有機會使用'subprocess.call()'?這將等待孩子完成。 –

相關問題