public class ConcurrentTaskScheduler extends ConcurrentTaskExecutor implements TaskScheduler
java.util.concurrent.ScheduledExecutorService
を受け取り、Spring TaskScheduler
を公開するアダプター。SchedulingTaskExecutor
インターフェースも実装するために、ConcurrentTaskExecutor
を拡張します。 可能であればトリガーベースのスケジューリングに使用するために、JSR-236 ManagedScheduledExecutorService
EE を自動検出します。Spring のローカルトリガー管理ではなく、java.util.concurrent.ScheduledExecutorService
API に対する通常の遅延ベースのスケジューリングに委譲されます。Java EE 7 環境での JSR-236 スタイルのルックアップについては、DefaultManagedTaskScheduler
の使用を検討してください。
ScheduledThreadPoolExecutor
SE を Bean スタイルで定義し、Spring TaskScheduler
として直接公開できるビルド済みの ThreadPoolTaskScheduler
があることに注意してください。これは、現在のアダプタークラスの個別の定義を使用した生の ScheduledThreadPoolExecutor 定義の便利な代替手段です。
ScheduledExecutorService
SE, ScheduledThreadPoolExecutor
SE, Executors
SE, DefaultManagedTaskScheduler
, ThreadPoolTaskScheduler
ConcurrentTaskExecutor.ManagedTaskBuilder
TIMEOUT_IMMEDIATE, TIMEOUT_INDEFINITE
コンストラクターと説明 |
---|
ConcurrentTaskScheduler() デフォルトとしてシングルスレッドエグゼキュータを使用して、新しい ConcurrentTaskScheduler を作成します。 |
ConcurrentTaskScheduler(ExecutorSE concurrentExecutor, ScheduledExecutorServiceSE scheduledExecutor) 指定された Executor SE および ScheduledExecutorService SE をデリゲートとして使用して、新しい ConcurrentTaskScheduler を作成します。 |
ConcurrentTaskScheduler(ScheduledExecutorServiceSE scheduledExecutor) 指定された ScheduledExecutorService SE を共有デリゲートとして使用して、新しい ConcurrentTaskScheduler を作成します。 |
修飾子と型 | メソッドと説明 |
---|---|
ScheduledFutureSE<?> | schedule(RunnableSE task, DateSE startTime) 指定された Runnable SE をスケジュールし、指定された実行時間に呼び出します。 |
ScheduledFutureSE<?> | schedule(RunnableSE task, Trigger trigger) 指定された Runnable SE をスケジュールし、トリガーが次の実行時間を示すたびに呼び出します。 |
ScheduledFutureSE<?> | scheduleAtFixedRate(RunnableSE task, DateSE startTime, long period) 指定された Runnable SE をスケジュールし、指定された実行時間に呼び出し、その後、指定された期間で呼び出します。 |
ScheduledFutureSE<?> | scheduleAtFixedRate(RunnableSE task, long period) 指定された Runnable SE をスケジュールします。できるだけ早く開始し、指定された期間で呼び出します。 |
ScheduledFutureSE<?> | scheduleWithFixedDelay(RunnableSE task, DateSE startTime, long delay) 指定された Runnable SE をスケジュールし、指定された実行時間に呼び出し、その後、1 つの実行が完了してから次の実行が開始されるまでの間に指定された遅延で呼び出します。 |
ScheduledFutureSE<?> | scheduleWithFixedDelay(RunnableSE task, long delay) 指定された Runnable SE をスケジュールします。できるだけ早く開始し、1 つの実行が完了してから次の実行が開始されるまでの間に指定された遅延で呼び出します。 |
void | setErrorHandler(ErrorHandler errorHandler) ErrorHandler 戦略を提供します。 |
void | setScheduledExecutor(ScheduledExecutorServiceSE scheduledExecutor) 委譲先の ScheduledExecutorService SE を指定します。 |
execute, execute, getConcurrentExecutor, setConcurrentExecutor, setTaskDecorator, submit, submit, submitListenable, submitListenable
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSE
schedule, scheduleAtFixedRate, scheduleAtFixedRate, scheduleWithFixedDelay, scheduleWithFixedDelay
prefersShortLivedTasks
public ConcurrentTaskScheduler()
public ConcurrentTaskScheduler(ScheduledExecutorServiceSE scheduledExecutor)
ScheduledExecutorService
SE を共有デリゲートとして使用して、新しい ConcurrentTaskScheduler を作成します。Spring のローカルトリガー管理の代わりに、可能であればトリガーベースのスケジューリングに使用するために、JSR-236 ManagedScheduledExecutorService
EE を自動検出します。
scheduledExecutor
- SchedulingTaskExecutor
および TaskScheduler
呼び出しのために委譲する ScheduledExecutorService
SEpublic ConcurrentTaskScheduler(ExecutorSE concurrentExecutor, ScheduledExecutorServiceSE scheduledExecutor)
Executor
SE および ScheduledExecutorService
SE をデリゲートとして使用して、新しい ConcurrentTaskScheduler を作成します。Spring のローカルトリガー管理の代わりに、可能であればトリガーベースのスケジューリングに使用するために、JSR-236 ManagedScheduledExecutorService
EE を自動検出します。
concurrentExecutor
- SchedulingTaskExecutor
呼び出しのために委譲する Executor
SEscheduledExecutor
- TaskScheduler
呼び出しのために委譲する ScheduledExecutorService
SEpublic void setScheduledExecutor(@Nullable ScheduledExecutorServiceSE scheduledExecutor)
ScheduledExecutorService
SE を指定します。Spring のローカルトリガー管理の代わりに、可能であればトリガーベースのスケジューリングに使用するために、JSR-236 ManagedScheduledExecutorService
EE を自動検出します。
メモ: これは TaskScheduler
呼び出しにのみ適用されます。特定のエグゼキューターを SchedulingTaskExecutor
呼び出しにも適用したい場合は、同じエグゼキューター参照を ConcurrentTaskExecutor.setConcurrentExecutor(java.util.concurrent.Executor)
に渡します。
public void setErrorHandler(ErrorHandler errorHandler)
ErrorHandler
戦略を提供します。@Nullable public ScheduledFutureSE<?> schedule(RunnableSE task, Trigger trigger)
TaskScheduler
Runnable
SE をスケジュールし、トリガーが次の実行時間を示すたびに呼び出します。 スケジューラがシャットダウンするか、返された ScheduledFuture
SE がキャンセルされると、実行は終了します。
TaskScheduler
の schedule
task
- トリガーが起動するたびに実行する Runnabletrigger
- Trigger
インターフェースの実装。cron 式をラップする CronTrigger
オブジェクト ScheduledFuture
SE、または指定された Trigger オブジェクトが起動しない場合は null
(つまり、Trigger.nextExecutionTime(org.springframework.scheduling.TriggerContext)
から null
を返します)CronTrigger
public ScheduledFutureSE<?> schedule(RunnableSE task, DateSE startTime)
TaskScheduler
Runnable
SE をスケジュールし、指定された実行時間に呼び出します。 スケジューラがシャットダウンするか、返された ScheduledFuture
SE がキャンセルされると、実行は終了します。
TaskScheduler
の schedule
task
- トリガーが起動するたびに実行する RunnablestartTime
- タスクの望ましい実行時間 (これが過去の場合、タスクはすぐに、つまりできるだけ早く実行されます)ScheduledFuture
SEpublic ScheduledFutureSE<?> scheduleAtFixedRate(RunnableSE task, DateSE startTime, long period)
TaskScheduler
Runnable
SE をスケジュールし、指定された実行時間に呼び出し、その後、指定された期間で呼び出します。 スケジューラがシャットダウンするか、返された ScheduledFuture
SE がキャンセルされると、実行は終了します。
TaskScheduler
の scheduleAtFixedRate
task
- トリガーが起動するたびに実行する RunnablestartTime
- タスクに必要な最初の実行時間 (これが過去の場合、タスクはすぐに、つまりできるだけ早く実行されます)period
- タスクの連続した実行の間隔 (ミリ秒単位)ScheduledFuture
SEpublic ScheduledFutureSE<?> scheduleAtFixedRate(RunnableSE task, long period)
TaskScheduler
Runnable
SE をスケジュールします。できるだけ早く開始し、指定された期間で呼び出します。 スケジューラがシャットダウンするか、返された ScheduledFuture
SE がキャンセルされると、実行は終了します。
TaskScheduler
の scheduleAtFixedRate
task
- トリガーが起動するたびに実行する Runnableperiod
- タスクの連続した実行の間隔 (ミリ秒単位)ScheduledFuture
SEpublic ScheduledFutureSE<?> scheduleWithFixedDelay(RunnableSE task, DateSE startTime, long delay)
TaskScheduler
Runnable
SE をスケジュールし、指定された実行時間に呼び出し、その後、1 つの実行が完了してから次の実行が開始されるまでの間に指定された遅延で呼び出します。 スケジューラがシャットダウンするか、返された ScheduledFuture
SE がキャンセルされると、実行は終了します。
TaskScheduler
の scheduleWithFixedDelay
task
- トリガーが起動するたびに実行する RunnablestartTime
- タスクに必要な最初の実行時間 (これが過去の場合、タスクはすぐに、つまりできるだけ早く実行されます)delay
- ある実行の補完から次の実行の開始までの遅延 (ミリ秒単位)ScheduledFuture
SEpublic ScheduledFutureSE<?> scheduleWithFixedDelay(RunnableSE task, long delay)
TaskScheduler
Runnable
SE をスケジュールします。できるだけ早く開始し、1 つの実行が完了してから次の実行が開始されるまでの間に指定された遅延で呼び出します。 スケジューラがシャットダウンするか、返された ScheduledFuture
SE がキャンセルされると、実行は終了します。
TaskScheduler
の scheduleWithFixedDelay
task
- トリガーが起動するたびに実行する Runnabledelay
- ある実行の補完から次の実行の開始までの遅延 (ミリ秒単位)ScheduledFuture
SE