クラス PeriodicTrigger

java.lang.ObjectSE
org.springframework.scheduling.support.PeriodicTrigger
実装されたすべてのインターフェース:
Trigger

public class PeriodicTrigger extends ObjectSE implements Trigger
定期的なタスク実行のトリガー。周期は固定レートまたは固定遅延のいずれかとして適用でき、初期遅延値も設定できます。デフォルトの初期遅延は 0 で、デフォルトの動作は固定遅延です(つまり、連続する実行間の間隔は、各完了時間から測定されます)。代わりに、各実行の開始予定時刻の間隔を測定するには、"fixedRate" プロパティを true に設定します。

TaskScheduler インターフェースは、固定レートまたは固定遅延でタスクをスケジュールするためのメソッドをすでに定義していることに注意してください。どちらも初期遅延のオプション値をサポートしています。これらのメソッドは、可能な限り直接使用する必要があります。このトリガー実装の価値は、トリガーの抽象化に依存するコンポーネント内で使用できることです。例: 定期的なトリガー、cron ベースのトリガー、さらにはカスタムトリガーの実装を交換して使用できるようにすると便利です。

導入:
3.0
作成者:
Mark Fisher
  • コンストラクターの詳細

    • PeriodicTrigger

      @DeprecatedSE(since="6.0") public PeriodicTrigger(long period)
      使用すべきではありません。
      6.0 の時点で、PeriodicTrigger(Duration) を推奨
      ミリ秒単位の指定された期間でトリガーを作成します。
    • PeriodicTrigger

      @DeprecatedSE(since="6.0") public PeriodicTrigger(long period, @Nullable TimeUnitSE timeUnit)
      使用すべきではありません。
      6.0 の時点で、PeriodicTrigger(Duration) を推奨
      指定された期間と時間単位でトリガーを作成します。時間単位は期間に適用されるだけでなく、後で setInitialDelay(long) を介してこのトリガーで構成されている場合は、"initialDelay" 値にも適用されます。
    • PeriodicTrigger

      public PeriodicTrigger(DurationSE period)
      指定された期間を期間としてトリガーを作成します。
      導入:
      6.0
  • メソッドの詳細

    • getPeriod

      @DeprecatedSE(since="6.0") public long getPeriod()
      使用すべきではありません。
      6.0 の時点で、getPeriodDuration() を推奨
      このトリガーの期間を返します。
      導入:
      5.0.2
    • getPeriodDuration

      public DurationSE getPeriodDuration()
      このトリガーの期間を返します。
      導入:
      6.0
    • getTimeUnit

      @DeprecatedSE(since="6.0") public TimeUnitSE getTimeUnit()
      使用すべきではありません。
      6.0 の時点で、直接の代替はありません
      このトリガーの時間単位(デフォルトではミリ秒)を返します。
      導入:
      5.0.2
    • setInitialDelay

      @DeprecatedSE(since="6.0") public void setInitialDelay(long initialDelay)
      使用すべきではありません。
      6.0 現在、setInitialDelay(Duration) を推奨
      最初の実行の遅延を指定します。このトリガーの TimeUnitSE に関して評価されます。インスタンス化時に時間単位が明示的に提供されなかった場合、デフォルトはミリ秒です。
    • setInitialDelay

      public void setInitialDelay(DurationSE initialDelay)
      最初の実行の遅延を指定します。
      導入:
      6.0
    • getInitialDelay

      @DeprecatedSE(since="6.0") public long getInitialDelay()
      使用すべきではありません。
      6.0 の時点で、getInitialDelayDuration() を推奨
      初期遅延を返します。遅延がない場合は 0 を返します。
      導入:
      5.0.2
    • getInitialDelayDuration

      @Nullable public DurationSE getInitialDelayDuration()
      初期遅延を返します。ない場合は null を返します。
      導入:
      6.0
    • setFixedRate

      public void setFixedRate(boolean fixedRate)
      実際の補完時刻間ではなく、スケジュールされた開始時刻間で定期的な間隔を測定するかどうかを指定します。後者の「固定遅延」動作がデフォルトです。
    • isFixedRate

      public boolean isFixedRate()
      このトリガーが固定レート(true)または固定遅延(false)の動作を使用するかどうかを返します。
      導入:
      5.0.2
    • nextExecution

      public InstantSE nextExecution(TriggerContext triggerContext)
      タスクが再度実行されるまでの時間を返します。
      次で指定:
      インターフェース TriggernextExecution 
      パラメーター:
      triggerContext - 最終実行時間と最終完了時間をカプセル化するコンテキストオブジェクト
      戻り値:
      トリガーで定義された次の実行時間、またはトリガーが起動しない場合は null 
    • equals

      public boolean equals(@Nullable ObjectSE other)
      オーバーライド:
      クラス ObjectSEequalsSE 
    • hashCode

      public int hashCode()
      オーバーライド:
      クラス ObjectSEhashCode