您好,登錄后才能下訂單哦!
本文主要給大家介紹了關于Linux中僵尸進程和孤兒進程的相關內(nèi)容,分享給出來供大家參考學習,下面來看看詳細的介紹:
1、僵尸進程
一個子進程在其父進程沒有調(diào)用wait()
或waitpid()
的情況下退出,這個子進程就是僵尸進程。如果其父進程還存在而一直不調(diào)用wait,則該僵尸進程將無法回收,等到其父進程退出后該進程將被init回收。
運行結果
2、孤兒進程
一個父進程退出,而它的一個或多個子進程還在運行,那么那些子進程將成為孤兒進程。孤兒進程將被init進程(進程號為1)所收養(yǎng),并由init進程對他們完成狀態(tài)收集工作。
運行結果
然而子進程一直在調(diào)用,也不能被ctrl^c掉。。
3、注冊函數(shù)atexit,在進程退出時調(diào)用
運行結果
由結果可見,當我們用注冊函數(shù)調(diào)用fun1、fun2、fun3時它在整個進程退出時會倒著給我們打印這些函數(shù)中的內(nèi)容,在最后退出時調(diào)用第一個注冊函數(shù)并打印信息。
總結
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作能帶來一定的幫助,如有疑問大家可以留言交流,謝謝大家對億速云的支持。
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。