graceful shutdown
強制終了ではなく、止める合図を出して進行中の処理をなるべく整えてから終了させる終了方式。
- 概念URI
https://comcomponent.com/knowledge/graceful-shutdown/
- 別名・表記
- 正常終了処理
- 最終確認日
- 2026-08-01
- 機械可読データ
- JSON-LD
この概念が関わる関係
- graceful shutdownはCancellationToken(.NET)を前提とします。graceful shutdownはCancellationToken(stoppingToken)による停止通知とStopAsyncの組み合わせを前提とする。 / 確度: 確立した関係 / 確認日: 2026-08-01 出典
- Environment.Exitはgraceful shutdownと両立しません。Environment.Exitで即座にプロセスを終了させると、hostが持つgraceful shutdownの経路を自分で切ってしまう。 / 確度: 確立した関係 / 確認日: 2026-08-01 出典
- IHostApplicationLifetimeはgraceful shutdownに対する本記事の推奨です。致命的エラーで全体を終了させたいときは、Environment.Exitではなく IHostApplicationLifetime.StopApplication() で正規の停止ルートを通すことが推奨される。 / 確度: 確立した関係 / 確認日: 2026-08-01 出典
- graceful shutdownはProcess.Kill(entireProcessTree: true)より先に行うべきです。協調終了を依頼し、短いtimeoutで待ち、最後にJobごと強制終了する3段階の順番にすると、正常終了は保ちつつハング時も回収できる / 確度: 確立した関係 / 確認日: 2026-08-01 出典
- graceful shutdownはコンソール制御イベントを利用します。console childへの協調終了は、CREATE_NEW_PROCESS_GROUPで起動しCTRL_BREAK_EVENTを送るという手段で行う / 確度: 条件付きの関係 / 確認日: 2026-08-01 出典
この概念を扱う記事
一次資料
このページはサイトの知識グラフ(_data/knowledge/)から自動生成されています。誤りの指摘はお問い合わせからお願いします。