システムモニターで、Kill ProcessとEnd Processの違いは何ですか?


14

システムモニター経由でプロセスを強制終了する場合、2つの簡単な方法、プロセスの強制終了とプロセスの終了が表示されます。これら2つの違いは何ですか?

回答:


9

システムモニターのマニュアルに従って、通常は「プロセスの終了」を使用する必要があり、それが失敗した場合のみ「プロセスの終了」を使用します。

通常、プロセスを終了するには、プロセスを終了するで説明されているようにプロセスを正常に終了できない場合にのみプロセスを終了します。

技術的なレベルでは、これにより、エンドプロセスはSIGQUITを送信し、必要に応じてプロセスがトラップしてクリーンアップを実行できるようになりますが、それが失敗した場合、キルプロセスはSIGKILLを送信する必要があります。控えめに使用してください!


6
SIGTERMは、プログラムを閉じる「丁寧な」方法であり、これが「プロセスの終了」が送信するものです。gnu.org/software/libc/manual/html_node/Termination-Signals.html-
リック

8

私も好奇心が強いので、ソースコードをブラウズして、application.cppで以下を見つけました。このコードには他にもありますが、少なくともシステムモニター3.8.2.1〜3.19.3の場合、これらはオプションに関連すると思います。

  • プロセスの停止= SIGSTOPシグナルを一時停止し、後でSIGCONTを続けましょう。プロセスを強制終了しません)
  • End Process = SIGTERM終了シグナル、正しい方法、アプリケーションはこのシグナルをインターセプトし、一時ファイルのクリーンアップなどのシャットダウンタスクを開始できます)
  • キル・プロセス= SIGKILLkillシグナル、極端な、SIGTERMは仕事をしない場合にのみ使用し、intiateシャットダウンタスクません)

すべてのkill / quit / shutdownシグナルとそれらの違いに関する適切な説明については、SIGINT、SIGTERM、SIGKILL、およびSIGSTOPシグナルに関するQuoraのこの質問を参照してください。

ソースコードのハイライト

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.