WindowsサービスでジョブスケジューリングにQuartzを使用しています。サービスが停止したときや、ユーザーがジョブの実行頻度を変更したときに、スケジューラーをシャットダウンする必要があります。シャットダウン現在のジョブが完了した後のクォーツスケジューラ
Quartz.UnableToInterruptJobException::ジョブ「MYJOB」は以来、 中断することができない私は実行中のジョブを待つしたいと、私は両方のケースで例外を取得
scheduler.Shutdown(true);
を使用しますQuartz.IInterruptableJobを実装していません
実行中のサービスは非常に悪いです。
ジョブの中断とは、ジョブが完了するのを待っていないことを意味します。それで、私は何を望んでいないのですか?それは現在の例外の問題を解決しますが。
shutdown
をクラッシュさせない正しい実装は何ですか?
そして、本当にIInterruptableJobを実装する必要がある場合、どうしたらいいですか?私はそれについてのチュートリアルを見つけることはできませんし、私は標準的なシャットダウンとは異なる何もしたくありません。私は、スケジューラを作成するための標準的なスケジューラの工場を使用しています:
schedulerFactory = new StdSchedulerFactory();
scheduler = schedulerFactory.GetScheduler();