クラス ScheduledExecutorTask

java.lang.ObjectSE
org.springframework.scheduling.concurrent.ScheduledExecutorTask

public class ScheduledExecutorTask extends ObjectSE
JavaBean は、RunnableSE と遅延プラス期間で構成される、スケジュールされたエグゼキュータータスクを記述します。期間を指定する必要があります。デフォルトでは意味がありません。

ScheduledExecutorServiceSE は、cron 式などのより高度なスケジューリングオプションを提供しません。このようなニーズには ThreadPoolTaskScheduler の使用を検討してください。

ScheduledExecutorServiceSE メカニズムは、実行ごとに新しい Job インスタンスを作成する Quartz とは対照的に、繰り返し実行間で共有される RunnableSE インスタンスを使用することに注意してください。

導入:
2.0
作成者:
Juergen Hoeller
関連事項:
  • コンストラクターのサマリー

    コンストラクター
    コンストラクター
    説明
    新しい ScheduledExecutorTask を作成し、Bean プロパティを介して入力されます。
    新しい ScheduledExecutorTask を作成します。デフォルトの 1 回の実行で遅延はありません。
    ScheduledExecutorTask(RunnableSE executorTask, long delay)
    新しい ScheduledExecutorTask を作成します。デフォルトは、指定された遅延で 1 回実行されます。
    ScheduledExecutorTask(RunnableSE executorTask, long delay, long period, boolean fixedRate)
    新しい ScheduledExecutorTask を作成します。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    long
    初めてジョブを開始する前に遅延を返します。
    long
    繰り返されるタスク実行間の期間を返します。
    Runnable を返し、executor タスクとしてスケジュールします。
    遅延と期間の値の時間単位を返します。
    boolean
    固定レート実行としてスケジュールするかどうかを返します。
    boolean
    このタスクは一度だけ実行されますか?
    void
    setDelay(long delay)
    初めてタスクを開始するまでの遅延をミリ秒単位で設定します。
    void
    setFixedRate(boolean fixedRate)
    固定遅延実行ではなく固定レート実行としてスケジュールするかどうかを設定します。
    void
    setPeriod(long period)
    繰り返し実行されるタスクの間隔をミリ秒単位で設定します。
    void
    setRunnable(RunnableSE executorTask)
    Runnable を executor タスクとしてスケジュールするように設定します。
    void
    遅延と期間の値の時間単位を指定します。

    クラス java.lang.ObjectSE から継承されたメソッド

    clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, toString, wait, waitSE, waitSE
  • コンストラクターの詳細

    • ScheduledExecutorTask

      public ScheduledExecutorTask()
      新しい ScheduledExecutorTask を作成し、Bean プロパティを介して入力されます。
      関連事項:
    • ScheduledExecutorTask

      public ScheduledExecutorTask(RunnableSE executorTask)
      新しい ScheduledExecutorTask を作成します。デフォルトの 1 回の実行で遅延はありません。
      パラメーター:
      executorTask - スケジュールする Runnable
    • ScheduledExecutorTask

      public ScheduledExecutorTask(RunnableSE executorTask, long delay)
      新しい ScheduledExecutorTask を作成します。デフォルトは、指定された遅延で 1 回実行されます。
      パラメーター:
      executorTask - スケジュールする Runnable
      delay - 初めてタスクを開始する前の遅延 (ミリ秒)
    • ScheduledExecutorTask

      public ScheduledExecutorTask(RunnableSE executorTask, long delay, long period, boolean fixedRate)
      新しい ScheduledExecutorTask を作成します。
      パラメーター:
      executorTask - スケジュールする Runnable
      delay - 初めてタスクを開始する前の遅延 (ミリ秒)
      period - 繰り返されるタスク実行間の期間 (ミリ秒)
      fixedRate - 固定レート実行としてスケジュールするかどうか
  • メソッドの詳細

    • setRunnable

      public void setRunnable(RunnableSE executorTask)
      Runnable を executor タスクとしてスケジュールするように設定します。
    • getRunnable

      public RunnableSE getRunnable()
      Runnable を返し、executor タスクとしてスケジュールします。
    • setDelay

      public void setDelay(long delay)
      初めてタスクを開始するまでの遅延をミリ秒単位で設定します。デフォルトは 0 で、スケジューリングが成功した後すぐにタスクを開始します。
    • getDelay

      public long getDelay()
      初めてジョブを開始する前に遅延を返します。
    • setPeriod

      public void setPeriod(long period)
      繰り返し実行されるタスクの間隔をミリ秒単位で設定します。

      デフォルトは -1 で、1 回だけ実行されます。正の値の場合、タスクは実行の間に指定された間隔で繰り返し実行されます。

      期間値のセマンティクスは、固定レート実行と固定遅延実行で異なることに注意してください。

      :(固定遅延として)0 の期間は java.util.concurrent.ScheduledExecutorService 自体がそれをサポートしていないという理由だけで、サポートされていません。値 0 は 1 回限りの実行として扱われます。ただし、そもそもその値を明示的に指定しないでください。

      関連事項:
    • getPeriod

      public long getPeriod()
      繰り返されるタスク実行間の期間を返します。
    • isOneTimeTask

      public boolean isOneTimeTask()
      このタスクは一度だけ実行されますか?
      戻り値:
      true (このタスクが一度だけ実行される場合)
      関連事項:
    • setTimeUnit

      public void setTimeUnit(@Nullable TimeUnitSE timeUnit)
      遅延と期間の値の時間単位を指定します。デフォルトはミリ秒(TimeUnit.MILLISECONDS)です。
      関連事項:
    • getTimeUnit

      public TimeUnitSE getTimeUnit()
      遅延と期間の値の時間単位を返します。
    • setFixedRate

      public void setFixedRate(boolean fixedRate)
      固定遅延実行ではなく固定レート実行としてスケジュールするかどうかを設定します。デフォルトは "false"、つまり固定遅延です。

      これらの実行モードの詳細については、ScheduledExecutorService javadoc を参照してください。

      関連事項:
    • isFixedRate

      public boolean isFixedRate()
      固定レート実行としてスケジュールするかどうかを返します。