Class TaskExecutorRegistration
ThreadPoolTaskExecutor
.- Since:
- 4.0
- Author:
- Rossen Stoyanchev, Juergen Hoeller
-
Constructor Summary
ConstructorDescriptionCreate a newTaskExecutorRegistration
for a defaultThreadPoolTaskExecutor
.TaskExecutorRegistration
(ThreadPoolTaskExecutor taskExecutor) Create a newTaskExecutorRegistration
for a givenThreadPoolTaskExecutor
. -
Method Summary
Modifier and TypeMethodDescriptioncorePoolSize
(int corePoolSize) Set the core pool size of the ThreadPoolExecutor.protected ThreadPoolTaskExecutor
protected boolean
Specify if the task executor has been supplied.keepAliveSeconds
(int keepAliveSeconds) Set the time limit for which threads may remain idle before being terminated.maxPoolSize
(int maxPoolSize) Set the max pool size of the ThreadPoolExecutor.queueCapacity
(int queueCapacity) Set the queue capacity for the ThreadPoolExecutor.
-
Constructor Details
-
TaskExecutorRegistration
public TaskExecutorRegistration()Create a newTaskExecutorRegistration
for a defaultThreadPoolTaskExecutor
. -
TaskExecutorRegistration
Create a newTaskExecutorRegistration
for a givenThreadPoolTaskExecutor
.- Parameters:
taskExecutor
- the executor to use
-
-
Method Details
-
corePoolSize
Set the core pool size of the ThreadPoolExecutor.NOTE: The core pool size is effectively the max pool size when an unbounded
queueCapacity
is configured (the default). This is essentially the "Unbounded queues" strategy as explained inThreadPoolExecutor
. When this strategy is used, themaxPoolSize
is ignored.By default this is set to twice the value of
Runtime.availableProcessors()
. In an application where tasks do not block frequently, the number should be closer to or equal to the number of available CPUs/cores. -
maxPoolSize
Set the max pool size of the ThreadPoolExecutor.NOTE: When an unbounded
queueCapacity
is configured (the default), the max pool size is effectively ignored. See the "Unbounded queues" strategy inThreadPoolExecutor
for more details.By default this is set to
Integer.MAX_VALUE
. -
keepAliveSeconds
Set the time limit for which threads may remain idle before being terminated. If there are more than the core number of threads currently in the pool, after waiting this amount of time without processing a task, excess threads will be terminated. This overrides any value set in the constructor.By default this is set to 60.
-
queueCapacity
Set the queue capacity for the ThreadPoolExecutor.NOTE: when an unbounded
queueCapacity
is configured (the default), the core pool size is effectively the max pool size. This is essentially the "Unbounded queues" strategy as explained inThreadPoolExecutor
. When this strategy is used, themaxPoolSize
is ignored.By default this is set to
Integer.MAX_VALUE
. -
isExternallyDefined
protected boolean isExternallyDefined()Specify if the task executor has been supplied.- Returns:
true
if the task executor was provided,false
if it has been created internally- Since:
- 6.2
-
getTaskExecutor
-