首頁  >  文章  >  後端開發  >  從程式設計師的角度來看,有哪3種進程狀態?

從程式設計師的角度來看,有哪3種進程狀態?

藏色散人
藏色散人轉載
2022-07-31 14:51:483719瀏覽

從程式設計師的角度來看,有3種狀態。

1、進行中

進程正在運行,或是等待被執行。

2、掛起(也叫停止)

暫時掛起, 例如執行了sleep(),wait()函數等。直到收到SIGCONT訊號接著運作進程。

3、終止

程式已經永遠結束,等待父行程回收或已經被回收。  常見的程式碼中執行exit函數,或cli下ctrl c。

註:有些童鞋可能覺得 「運行狀態下等待被運行」和「掛起」有什麼差別呢?

答案:

掛起狀態是收到一個訊號,例如SIGSTOP,SIGISTP等,變成掛起狀態。在這段期間直到收到繼續執行進程的 SIGCONT訊號,否則不會被核心執行。它告訴內核大哥, 我還在等待 「SIGCONT訊號「的通知, 核心你還不能調度我。 而「進行狀態下的等待被運行」是 進程告訴內核大哥我已經準備好了, 你可以隨時調度我了。

原文網址:https://learnku.com/articles/70147

以上是從程式設計師的角度來看,有哪3種進程狀態?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:learnku.com。如有侵權,請聯絡admin@php.cn刪除