クラス ScheduledExecutorTask
java.lang.ObjectSE
org.springframework.scheduling.concurrent.ScheduledExecutorTask
JavaBean は、
RunnableSE と遅延プラス期間で構成される、スケジュールされたエグゼキュータータスクを記述します。期間を指定する必要があります。デフォルトでは意味がありません。ScheduledExecutorServiceSE は、cron 式などのより高度なスケジューリングオプションを提供しません。このようなニーズには ThreadPoolTaskScheduler の使用を検討してください。
ScheduledExecutorServiceSE メカニズムは、実行ごとに新しい Job インスタンスを作成する Quartz とは対照的に、繰り返し実行間で共有される RunnableSE インスタンスを使用することに注意してください。
コンストラクターの概要
コンストラクターコンストラクター説明新しい ScheduledExecutorTask を作成し、Bean プロパティを介して入力されます。ScheduledExecutorTask(RunnableSE executorTask) 新しい ScheduledExecutorTask を作成します。デフォルトの 1 回の実行で遅延はありません。ScheduledExecutorTask(RunnableSE executorTask, long delay) 新しい ScheduledExecutorTask を作成します。デフォルトは、指定された遅延で 1 回実行されます。ScheduledExecutorTask(RunnableSE executorTask, long delay, long period, boolean fixedRate) 新しい ScheduledExecutorTask を作成します。メソッドのサマリー
修飾子と型メソッド説明longgetDelay()初めてジョブを開始する前に遅延を返します。long繰り返されるタスク実行間の期間を返します。Runnable を返し、executor タスクとしてスケジュールします。遅延と期間の値の時間単位を返します。boolean固定レート実行としてスケジュールするかどうかを返します。booleanこのタスクは一度だけ実行されますか?voidsetDelay(long delay) 初めてタスクを開始するまでの遅延をミリ秒単位で設定します。voidsetFixedRate(boolean fixedRate) 固定遅延実行ではなく固定レート実行としてスケジュールするかどうかを設定します。voidsetPeriod(long period) 繰り返し実行されるタスクの間隔をミリ秒単位で設定します。voidsetRunnable(RunnableSE executorTask) Runnable を executor タスクとしてスケジュールするように設定します。voidsetTimeUnit(TimeUnitSE timeUnit) 遅延と期間の値の時間単位を指定します。
コンストラクターの詳細
ScheduledExecutorTask
public ScheduledExecutorTask()新しい ScheduledExecutorTask を作成し、Bean プロパティを介して入力されます。ScheduledExecutorTask
新しい ScheduledExecutorTask を作成します。デフォルトの 1 回の実行で遅延はありません。- パラメーター:
executorTask- スケジュールする Runnable
ScheduledExecutorTask
新しい ScheduledExecutorTask を作成します。デフォルトは、指定された遅延で 1 回実行されます。- パラメーター:
executorTask- スケジュールする Runnabledelay- 初めてタスクを開始する前の遅延 (ミリ秒)
ScheduledExecutorTask
新しい ScheduledExecutorTask を作成します。- パラメーター:
executorTask- スケジュールする Runnabledelay- 初めてタスクを開始する前の遅延 (ミリ秒)period- 繰り返されるタスク実行間の期間 (ミリ秒)fixedRate- 固定レート実行としてスケジュールするかどうか
メソッドの詳細
setRunnable
Runnable を executor タスクとしてスケジュールするように設定します。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
遅延と期間の値の時間単位を指定します。デフォルトはミリ秒(TimeUnit.MILLISECONDS)です。getTimeUnit
遅延と期間の値の時間単位を返します。setFixedRate
public void setFixedRate(boolean fixedRate) 固定遅延実行ではなく固定レート実行としてスケジュールするかどうかを設定します。デフォルトは "false"、つまり固定遅延です。これらの実行モードの詳細については、ScheduledExecutorService javadoc を参照してください。
isFixedRate
public boolean isFixedRate()固定レート実行としてスケジュールするかどうかを返します。