SIGTERMにサービスをキャンセルし、完了していないジョブを終了する必要がありますか?

SIGTERMにサービスをキャンセルし、完了していないジョブを終了する必要がありますか?

サービスが「リスク」または一貫性のない状態(ジョブの実行失敗を観察したにもかかわらず)に置かないと仮定すると、ファイル、接続、およびその他のタスクを閉じる必要がありますか?

ベストアンサー1

はい、そうです。動作するかどうかはユーティリティによって異なります。

ファイルとの関連付けは通常、プログラムの終了時に閉じられます。「他のタスク」は何らかの理由で中断される可能性があります(一時ファイルが残っている可能性があり、データベースが疑わしい状態にある可能性があり、実際にファイルに書き込まれていないデータが失われる可能性があります)。

プログラムは、TERM信号ハンドラから信号を捕捉して終了することができる。優雅につまり、やっていたことをすべて終えて、実際に終了すると、世界を秩序ある状態にしておくのです。また、信号を完全に捕捉して無視することもできます。

おすすめ記事