ThreadPoolSupplier (common.configurable) Configuration

Type: io.helidon.common.configurable.ThreadPoolSupplier

Configuration options

Optional configuration options
keytypedefault valuedescription
core-pool-size

int

10

Core pool size of the thread pool executor. Defaults to DEFAULT_CORE_POOL_SIZE.

@return corePoolSize see java.util.concurrent.ThreadPoolExecutor#getCorePoolSize()
growth-rate

int

0

The percentage of task submissions that should result in adding threads, expressed as a value from 1 to 100. The rate applies only when all of the following are true:

  • the pool size is below the maximum, and

  • there are no idle threads, and

  • the number of tasks in the queue exceeds the growthThreshold

For example, a rate of 20 means that while these conditions are met one thread will be added for every 5 submitted tasks.

Defaults to `DEFAULT_GROWTH_RATE`
@return the growth rate
growth-threshold

int

1000

The queue size above which pool growth will be considered if the pool is not fixed size. Defaults to DEFAULT_GROWTH_THRESHOLD.

@return the growth threshold
is-daemon

boolean

true

Is daemon of the thread pool executor. Defaults to DEFAULT_IS_DAEMON.

@return whether the threads are daemon threads
keep-alive

Duration

PT3M

Keep alive of the thread pool executor. Defaults to DEFAULT_KEEP_ALIVE.

@return keep alive see java.util.concurrent.ThreadPoolExecutor#getKeepAliveTime(java.util.concurrent.TimeUnit)
max-pool-size

int

50

Max pool size of the thread pool executor. Defaults to DEFAULT_MAX_POOL_SIZE.

@return maxPoolSize see java.util.concurrent.ThreadPoolExecutor#getMaximumPoolSize()
name

string

 

Name of this thread pool executor.

@return the pool name
queue-capacity

int

10000

Queue capacity of the thread pool executor. Defaults to DEFAULT_QUEUE_CAPACITY.

@return capacity of the queue backing the executor
should-prestart

boolean

true

Whether to prestart core threads in this thread pool executor. Defaults to DEFAULT_PRESTART.

@return whether to prestart the threads
thread-name-prefix

string

 

Name prefix for threads in this thread pool executor. Defaults to DEFAULT_THREAD_NAME_PREFIX.

@return prefix of a thread name
virtual-threads

boolean

 

When configured to true, an unbounded virtual executor service (project Loom) will be used.

If enabled, all other configuration options of this executor service are ignored!
@return whether to use virtual threads or not, defaults to `false`