[英]Are child processes created with fork() automatically killed when the parent is killed?
我在C / C ++中使用fork()
創建子進程。
當父進程結束(或由於某種原因被殺死)時,我也希望所有子進程也被殺死。
這是系統自動完成的嗎? 還是我必須自己做?
謝謝。
預先存在的類似問題:
否。如果父進程被殺死,則子進程將成為init進程的子進程(該進程的進程ID為1,並由內核作為第一個用戶進程啟動)。
初始化過程會定期檢查新的子代,然后等待它們(從而釋放由其返回值分配的資源)。
這個問題已經在這里得到了高質量的答案討論: 如何使父進程退出后子進程死亡?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.