我知道一個父行程已經死亡的子行程變成了一個僵尸行程,但是當這種情況發生時,它會繼續正常執行嗎?
到目前為止我所讀到的似乎表明是的,但我還沒有找到確認,我的編程冒險似乎表明并非如此。
uj5u.com熱心網友回復:
孩子的父母是否退出對其是否繼續運行沒有影響。假設子行程可以訪問它需要的資源,它將繼續正常運行。
這在撰寫守護行程時很重要,因為通常啟動的行程會派生兩次,并且最終作為服務運行的是孫子行程。
請注意,由于父級退出,子級可能最終例外退出有一些原因。例如,如果父行程是一個互動式 shell 并且它退出,則終端可能會消失,結果子行程可能會收到一個 SIGHUP。然而,在這種情況下,子行程退出的原因是它收到了一個它沒有處理的信號,如果它設定了一個合適的處理程式,它就會繼續運行。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/321757.html
