50.11. 予期しない命令の設定


quartz スケジューラーは、予期しないトリガーの発生状況を処理するための予期しない命令を使用して設定できます。使用している具体的なトリガータイプでは、このプロパティーの値として設定できる追加の MISFIRE_INSTRUCTION_XXX 定数のセットが定義されています。

たとえば、ミスファイア命令 4 を使用するように単純なトリガーを設定するには、次のようにします。

quartz://myGroup/myTimerName?trigger.repeatInterval=2000&trigger.misfireInstruction=4
Copy to Clipboard Toggle word wrap

同様に、予期しない命令の 1 つを使用して cron トリガーを設定することもできます。

quartz://myGroup/myTimerName?cron=0/2+*+*+*+*+?&trigger.misfireInstruction=2
Copy to Clipboard Toggle word wrap

シンプルトリガーと cron トリガーには、代表的な次の予期しない命令があります。

50.11.1. SimpleTrigger.MISFIRE_INSTRUCTION_FIRE_NOW = 1 (default)

予期しない状況で、SimpleTrigger が Scheduler によってすぐに起動されることを Scheduler に指示します。

この命令は通常、ワンショット (非反復) トリガーにのみ使用する必要があります。繰り返し回数が 0 を超えるトリガーで使用された場合、MISFIRE_INSTRUCTION_RESCHEDULE_NOW_WITH_REMAINING_REPEAT_COUNT 命令と同等です。

50.11.2. SimpleTrigger.MISFIRE_INSTRUCTION_RESCHEDULE_NOW_WITH_EXISTING_REPEAT_COUNT = 2

予期しない状況が発生した場合、SimpleTrigger が (関連付けられた Calendar で今が除外されていても) 繰り返し回数をそのままにして今に再スケジュールされることを Scheduler に指示します。ただし、これはトリガーの終了時間に従います。そのため、現在が終了時間の後にある場合、トリガーは再び起動しません。

この命令を使用すると、トリガは元々設定されていた開始時刻と繰り返し回数を忘れてしまいます(これは、何らかの理由で、後で元の値が何であったかを知ることができるようにしたい場合のみ問題です)。

50.11.3. SimpleTrigger.MISFIRE_INSTRUCTION_RESCHEDULE_NOW_WITH_REMAINING_REPEAT_COUNT = 3

予期しない状況があった場合、SimpleTrigger は 'now' に再スケジュールされることをスケジューラに指示します (関連するカレンダーが 'now' を除外していても)。ただし、これはトリガーの終了時間に従います。そのため、現在が終了時間の後にある場合、トリガーは再び起動しません。

この命令を使用すると、トリガーは、最初に設定された開始時間と繰り返し回数を忘れてしまいます。代わりに、トリガーの繰り返し回数が残りの繰り返し回数に変更されます (これは、何らかの理由で元の値が後でわかるようにしたい場合にのみ問題になります)。

この命令により、すべてのトリガーが失敗した場合、今トリガーした後、'COMPLETE' 状態になる可能性があります。

50.11.4. SimpleTrigger.MISFIRE_INSTRUCTION_RESCHEDULE_NEXT_WITH_REMAINING_COUNT = 4

予期しない状況があった場合、SimpleTrigger を 'now' の次のスケジュール時刻に再スケジュールするようスケジューラに指示します - 関連するカレンダーを考慮し、繰り返し回数を、予期しない状況がなかった場合の回数に設定します。

注記

この命令により、すべてのトリガーが失敗した場合、トリガーが直接 COMPLETE 状態になる可能性があります。

50.11.5. SimpleTrigger.MISFIRE_INSTRUCTION_RESCHEDULE_NEXT_WITH_EXISTING_COUNT = 5

予期しない状況が発生した場合、SimpleTrigger が現在の後の次のスケジュールされた時間に再スケジュールされることをスケジューラーに指示します - 関連するすべてのカレンダーを考慮し、繰り返し回数は変更されません。

注記

この命令により、トリガーの終了時刻が到来した場合、トリガーが直接 COMPLETE 状態になる可能性があります。

50.11.6. CronTrigger.MISFIRE_INSTRUCTION_FIRE_ONCE_NOW = 1 (default)

予期しない状況で、CronTrigger が Scheduler によってすぐに起動されることを Scheduler に指示します。

50.11.7. CronTrigger.MISFIRE_INSTRUCTION_DO_NOTHING = 2

予期しない状況が発生した場合、CronTrigger は次回の起動時刻を現在の時刻の後のスケジュール内の次回の時刻に更新する必要があることをスケジューラーに指示します (関連するカレンダーを考慮に入れますが、今すぐ起動する必要はありません)。.

トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat