spring-framework / org.springframework.scheduling.concurrent / ThreadPoolTaskScheduler

ThreadPoolTaskScheduler

open class ThreadPoolTaskScheduler : ExecutorConfigurationSupport, AsyncListenableTaskExecutor, SchedulingTaskExecutor, TaskScheduler

Implementation of Spring's TaskScheduler interface, wrapping a native java.util.concurrent.ScheduledThreadPoolExecutor.

Author
Juergen Hoeller

Author
Mark Fisher

Since
3.0

See Also
#setPoolSize#setRemoveOnCancelPolicy#setThreadFactory#setErrorHandler

Constructors

<init>

ThreadPoolTaskScheduler()

Implementation of Spring's TaskScheduler interface, wrapping a native java.util.concurrent.ScheduledThreadPoolExecutor.

Functions

execute

open fun execute(task: Runnable): Unit
open fun execute(task: Runnable, startTimeout: Long): Unit

getActiveCount

open fun getActiveCount(): Int

Return the number of currently active threads.

Requires an underlying ScheduledThreadPoolExecutor.

getPoolSize

open fun getPoolSize(): Int

Return the current pool size.

Requires an underlying ScheduledThreadPoolExecutor.

getScheduledExecutor

open fun getScheduledExecutor(): ScheduledExecutorService

Return the underlying ScheduledExecutorService for native access.

getScheduledThreadPoolExecutor

open fun getScheduledThreadPoolExecutor(): ScheduledThreadPoolExecutor

Return the underlying ScheduledThreadPoolExecutor, if available.

isRemoveOnCancelPolicy

open fun isRemoveOnCancelPolicy(): Boolean

Return the current setting for the remove-on-cancel mode.

Requires an underlying ScheduledThreadPoolExecutor.

prefersShortLivedTasks

open fun prefersShortLivedTasks(): Boolean

schedule

open fun schedule(task: Runnable, trigger: Trigger): ScheduledFuture<*>
open fun schedule(task: Runnable, startTime: Date): ScheduledFuture<*>

scheduleAtFixedRate

open fun scheduleAtFixedRate(task: Runnable, startTime: Date, period: Long): ScheduledFuture<*>
open fun scheduleAtFixedRate(task: Runnable, period: Long): ScheduledFuture<*>

scheduleWithFixedDelay

open fun scheduleWithFixedDelay(task: Runnable, startTime: Date, delay: Long): ScheduledFuture<*>
open fun scheduleWithFixedDelay(task: Runnable, delay: Long): ScheduledFuture<*>

setErrorHandler

open fun setErrorHandler(errorHandler: ErrorHandler): Unit

Set a custom ErrorHandler strategy.

setPoolSize

open fun setPoolSize(poolSize: Int): Unit

Set the ScheduledExecutorService's pool size. Default is 1.

This setting can be modified at runtime, for example through JMX.

setRemoveOnCancelPolicy

open fun setRemoveOnCancelPolicy(removeOnCancelPolicy: Boolean): Unit

Set the remove-on-cancel mode on ScheduledThreadPoolExecutor (JDK 7+).

Default is false. If set to true, the target executor will be switched into remove-on-cancel mode (if possible, with a soft fallback otherwise).

This setting can be modified at runtime, for example through JMX.

submit

open fun submit(task: Runnable): Future<*>
open fun <T : Any> submit(task: Callable<T>): Future<T>

submitListenable

open fun submitListenable(task: Runnable): ListenableFuture<*>
open fun <T : Any> submitListenable(task: Callable<T>): ListenableFuture<T>