簡體   English   中英

叉,父和子過程

[英]Fork, Parent and child process

在C中,即使父命令退出,是否有可能使forked()進程無限期地存活?

我想要做的是,父進程分叉一個孩子,然后退出,孩子繼續在后台運行,直到另一個進程發送一個終止信號。

是的,絕對有可能讓孩子活着。 其他響應者也是正確的; 這就是“守護進程”或后台進程在Linux環境中運行的方式。

有人稱之為“分離和死亡”的方法。 這是一個描述如何操作的鏈接: http//wiki.linuxquestions.org/wiki/Fork_off_and_die

請注意,不僅僅是fork() - ing。 關閉文件描述符以防止后台進程占用系統資源等。

Kerrek是對的,這正是每個守護進程實現的方式。 所以,你的想法很完美。

有一個守護程序庫函數,它非常容易使用。

如果要編寫行為良好的守護程序,則daemon()函數調用並非沒有限制。 有關說明,請參閱啟動守護程序

簡而言之:一個好的守護進程應該只在它准備好進行現場請求時才會顯示,但是在它自己的PID和打印啟動錯誤下進行設置

暫無
暫無

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

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