public class DynamicExecutors extends Object
DynamicThreadPoolExecutor
.Modifier and Type | Method and Description |
---|---|
static ThreadFactory |
daemonThreadFactory(String namePrefix)
A priority based thread factory, for all Thread priority constants:
Thread.MIN_PRIORITY, Thread.NORM_PRIORITY, Thread.MAX_PRIORITY;
This factory is used instead of Executors.DefaultThreadFactory to allow manipulation of
priority and thread owner name.
|
static ExecutorService |
newBlockingThreadPool(int min,
int max,
long keepAliveTime,
int capacity,
long waitTime)
Creates a thread pool similar to that constructed by
newScalingThreadPool(int, int, long) , but blocks the call to execute if the
queue has reached it's capacity, and all max threads are busy handling requests. |
static ExecutorService |
newBlockingThreadPool(int min,
int max,
long keepAliveTime,
int capacity,
long waitTime,
ThreadFactory threadFactory)
Creates a thread pool, same as in
newBlockingThreadPool(int, int, long, int, long) ,
using the provided ThreadFactory to create new threads when needed. |
static ExecutorService |
newScalingThreadPool(int min,
int max,
long keepAliveTime)
Creates a thread pool that creates new threads as needed, but will reuse previously
constructed threads when they are available.
|
static ExecutorService |
newScalingThreadPool(int min,
int max,
long keepAliveTime,
ThreadFactory threadFactory)
Creates a thread pool, same as in
newScalingThreadPool(int, int, long) , using the
provided ThreadFactory to create new threads when needed. |
static ThreadFactory |
priorityThreadFactory(int priority,
String namePrefix)
A priority based thread factory, for all Thread priority constants:
Thread.MIN_PRIORITY, Thread.NORM_PRIORITY, Thread.MAX_PRIORITY;
This factory is used instead of Executors.DefaultThreadFactory to allow manipulation of
priority and thread owner name.
|
public static ExecutorService newScalingThreadPool(int min, int max, long keepAliveTime)
min
- the number of threads to keep in the pool, even if they are idle.max
- the maximum number of threads to allow in the pool.keepAliveTime
- when the number of threads is greater than the min, this is the maximum time that
excess idle threads will wait for new tasks before terminating (in milliseconds).public static ExecutorService newScalingThreadPool(int min, int max, long keepAliveTime, ThreadFactory threadFactory)
newScalingThreadPool(int, int, long)
, using the
provided ThreadFactory to create new threads when needed.min
- the number of threads to keep in the pool, even if they are idle.max
- the maximum number of threads to allow in the pool.keepAliveTime
- when the number of threads is greater than the min, this is the maximum time that
excess idle threads will wait for new tasks before terminating (in milliseconds).threadFactory
- the factory to use when creating new threads.public static ExecutorService newBlockingThreadPool(int min, int max, long keepAliveTime, int capacity, long waitTime)
newScalingThreadPool(int, int, long)
, but blocks the call to execute if the
queue has reached it's capacity, and all max threads are busy handling requests.
If the wait time of this queue has elapsed, a RejectedExecutionException
will be
thrown.min
- the number of threads to keep in the pool, even if they are idle.max
- the maximum number of threads to allow in the pool.keepAliveTime
- when the number of threads is greater than the min, this is the maximum time that
excess idle threads will wait for new tasks before terminating (in milliseconds).capacity
- the fixed capacity of the underlying queue (resembles backlog).waitTime
- the wait time (in milliseconds) for space to become available in the queue.public static ExecutorService newBlockingThreadPool(int min, int max, long keepAliveTime, int capacity, long waitTime, ThreadFactory threadFactory)
newBlockingThreadPool(int, int, long, int, long)
,
using the provided ThreadFactory to create new threads when needed.min
- the number of threads to keep in the pool, even if they are idle.max
- the maximum number of threads to allow in the pool.keepAliveTime
- when the number of threads is greater than the min, this is the maximum time that
excess idle threads will wait for new tasks before terminating (in milliseconds).capacity
- the fixed capacity of the underlying queue (resembles backlog).waitTime
- the wait time (in milliseconds) for space to become available in the queue.threadFactory
- the factory to use when creating new threads.public static ThreadFactory daemonThreadFactory(String namePrefix)
namePrefix
- a name prefix for this threadpublic static ThreadFactory priorityThreadFactory(int priority, String namePrefix)
priority
- The priority to be assigned to each thread; can be either
Thread.MIN_PRIORITY, Thread.NORM_PRIORITY or Thread.MAX_PRIORITY.namePrefix
- a name prefix for this threadCopyright © 2009-2013 jclouds. All Rights Reserved.