殭屍進程簡析

來源:互聯網
上載者:User

殭屍進程簡析    殭屍進程就是父進程fork之後並沒有wait子進程。在子進程退出的時候,核心釋放該進程所有的資源,比如檔案描述符,記憶體,等等,但是依然為該進程保留一定的資訊,只有該進程的父進程wait之後才會釋放掉這些保留的資訊。如果父進程沒有wait,那麼子進程就變成了殭屍進程。在高並發的伺服器中,殭屍進程會有很大的危害。如果殭屍進程過多,那麼就會有大量的進程號被殭屍進程佔用,但是系統所能使用的進程是有限的。如果殭屍進程多到連新進程的進程號都沒法提供,那麼伺服器就會一直處於拒絕狀態了。  www.2cto.com       但是高並發伺服器的父進程肯定會fork許多子進程,而且有可能父進程不需要知道任何子進程的結束資訊,如果還wait每個子進程的話,肯定會造成資源的大量良妃。針對這種情況,有一個非常簡單卻非常有效辦法。當子進程exit()的時候,核心會向父進程發送一個SIGCHLD訊號。將這個訊號的處理方式設定為SIG_IGN,那麼就可以讓父進程忽略子進程發送的SIGCHLD訊號了。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.