プログラマの観点から見ると、プロセスの 3 つの状態とは何でしょうか?

藏色散人
リリース: 2023-03-16 16:48:01
転載
3711 人が閲覧しました

プログラマの観点から見ると、プロセスには 3 つの状態があります。

1.進行中

プロセスは実行中または実行待ちです。

2. サスペンド (停止とも呼ばれます)

sleep()、wait() 関数の実行などの一時的な中断。 SIGCONT シグナルを受信するまでプロセスの実行を続けます。

3. 終了

プロセスは永久に終了し、親プロセスによるリサイクルを待っているか、リサイクルされました。一般的なコードで exit 関数を実行するか、cli で ctrl c を押します。

注: 「 は実行状態で実行を待っている」 と「一時停止中」と考える子供もいるかもしれません。違いは何ですか?

回答:

サスペンド状態とは、SIGSTOP、SIGISTPなどのシグナルを受信して​​サスペンド状態になることです。この期間中、プロセスの実行を継続するために SIGCONT 信号が受信されるまで、カーネルによってプロセスは実行されません。これは、カーネル ブラザーに、私はまだ「SIGCONT シグナル」通知を待っているが、カーネルはまだ私をスケジュールできないことを伝えます。そして、「進行中の状態で実行されるのを待っている」とは、準備ができており、いつでもスケジュールを設定できることをカーネル ブラザーに伝えるプロセスです。

元のアドレス: https://learnku.com/articles/70147

以上がプログラマの観点から見ると、プロセスの 3 つの状態とは何でしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:learnku.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート