public class StandardThreadExecutor extends LifecycleMBeanBase implements Executor, ResizableExecutor
Lifecycle.SingleUse| Modifier and Type | Field and Description |
|---|---|
protected boolean |
daemon
Run threads in daemon or non-daemon state
|
protected ThreadPoolExecutor |
executor
The executor we use for this component
|
protected int |
maxIdleTime
idle time in milliseconds
|
protected int |
maxQueueSize
The maximum number of elements that can queue up before we reject them
|
protected int |
maxThreads
max number of threads
|
protected int |
minSpareThreads
min number of threads
|
protected String |
name
the name of this thread pool
|
protected String |
namePrefix
Default name prefix for the thread name
|
protected boolean |
prestartminSpareThreads
prestart threads?
|
protected static StringManager |
sm |
protected int |
threadPriority
Default thread priority
|
protected long |
threadRenewalDelay
After a context is stopped, threads in the pool are renewed.
|
mserverAFTER_DESTROY_EVENT, AFTER_INIT_EVENT, AFTER_START_EVENT, AFTER_STOP_EVENT, BEFORE_DESTROY_EVENT, BEFORE_INIT_EVENT, BEFORE_START_EVENT, BEFORE_STOP_EVENT, CONFIGURE_START_EVENT, CONFIGURE_STOP_EVENT, PERIODIC_EVENT, START_EVENT, STOP_EVENT| Constructor and Description |
|---|
StandardThreadExecutor() |
| Modifier and Type | Method and Description |
|---|---|
void |
contextStopping() |
protected void |
destroyInternal()
Sub-classes wishing to perform additional clean-up should override this
method, ensuring that super.destroyInternal() is the last call in the
overriding method.
|
void |
execute(Runnable command) |
void |
execute(Runnable command,
long timeout,
TimeUnit unit)
Executes the given command at some time in the future.
|
int |
getActiveCount()
Returns the approximate number of threads that are actively executing
tasks.
|
long |
getCompletedTaskCount() |
int |
getCorePoolSize() |
protected String |
getDomainInternal()
Method implemented by sub-classes to identify the domain in which MBeans
should be registered.
|
int |
getLargestPoolSize() |
int |
getMaxIdleTime() |
int |
getMaxQueueSize() |
int |
getMaxThreads() |
int |
getMinSpareThreads() |
String |
getName() |
String |
getNamePrefix() |
protected String |
getObjectNameKeyProperties()
Allow sub-classes to specify the key properties component of the
ObjectName that will be used to register this component. |
int |
getPoolSize()
Returns the current number of threads in the pool.
|
int |
getQueueSize() |
int |
getThreadPriority() |
long |
getThreadRenewalDelay() |
protected void |
initInternal()
Sub-classes wishing to perform additional initialization should override
this method, ensuring that super.initInternal() is the first call in the
overriding method.
|
boolean |
isDaemon() |
boolean |
isPrestartminSpareThreads() |
boolean |
resizePool(int corePoolSize,
int maximumPoolSize) |
boolean |
resizeQueue(int capacity) |
void |
setDaemon(boolean daemon) |
void |
setMaxIdleTime(int maxIdleTime) |
void |
setMaxQueueSize(int size) |
void |
setMaxThreads(int maxThreads) |
void |
setMinSpareThreads(int minSpareThreads) |
void |
setName(String name) |
void |
setNamePrefix(String namePrefix) |
void |
setPrestartminSpareThreads(boolean prestartminSpareThreads) |
void |
setThreadPriority(int threadPriority) |
void |
setThreadRenewalDelay(long threadRenewalDelay) |
protected void |
startInternal()
Start the component and implement the requirements
of
LifecycleBase.startInternal(). |
protected void |
stopInternal()
Stop the component and implement the requirements
of
LifecycleBase.stopInternal(). |
getDomain, getObjectName, postDeregister, postRegister, preDeregister, preRegister, register, setDomain, unregisteraddLifecycleListener, destroy, findLifecycleListeners, fireLifecycleEvent, getState, getStateName, getThrowOnFailure, init, removeLifecycleListener, setState, setState, setThrowOnFailure, start, stopclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitaddLifecycleListener, destroy, findLifecycleListeners, getState, getStateName, init, removeLifecycleListener, start, stopprotected static final StringManager sm
protected int threadPriority
protected boolean daemon
protected String namePrefix
protected int maxThreads
protected int minSpareThreads
protected int maxIdleTime
protected ThreadPoolExecutor executor
protected String name
protected boolean prestartminSpareThreads
protected int maxQueueSize
protected long threadRenewalDelay
protected void initInternal()
throws LifecycleException
LifecycleMBeanBaseinitInternal in class LifecycleMBeanBaseLifecycleException - If the initialisation failsprotected void startInternal()
throws LifecycleException
LifecycleBase.startInternal().startInternal in class LifecycleBaseLifecycleException - if this component detects a fatal error
that prevents this component from being usedprotected void stopInternal()
throws LifecycleException
LifecycleBase.stopInternal().stopInternal in class LifecycleBaseLifecycleException - if this component detects a fatal error
that needs to be reportedprotected void destroyInternal()
throws LifecycleException
LifecycleMBeanBasedestroyInternal in class LifecycleMBeanBaseLifecycleException - If the destruction failspublic void execute(Runnable command, long timeout, TimeUnit unit)
ExecutorExecutor implementation.
If no threads are available, it will be added to the work queue.
If the work queue is full, the system will wait for the specified
time until it throws a RejectedExecutionExceptioncommand - the runnable tasktimeout - the length of time to wait for the task to completeunit - the units in which timeout is expressedpublic void contextStopping()
public int getThreadPriority()
public boolean isDaemon()
public String getNamePrefix()
public int getMaxIdleTime()
public int getMaxThreads()
getMaxThreads in interface ResizableExecutorpublic int getMinSpareThreads()
public String getName()
public boolean isPrestartminSpareThreads()
public void setThreadPriority(int threadPriority)
public void setDaemon(boolean daemon)
public void setNamePrefix(String namePrefix)
public void setMaxIdleTime(int maxIdleTime)
public void setMaxThreads(int maxThreads)
public void setMinSpareThreads(int minSpareThreads)
public void setPrestartminSpareThreads(boolean prestartminSpareThreads)
public void setName(String name)
public void setMaxQueueSize(int size)
public int getMaxQueueSize()
public long getThreadRenewalDelay()
public void setThreadRenewalDelay(long threadRenewalDelay)
public int getActiveCount()
ResizableExecutorgetActiveCount in interface ResizableExecutorpublic long getCompletedTaskCount()
public int getCorePoolSize()
public int getLargestPoolSize()
public int getPoolSize()
ResizableExecutorgetPoolSize in interface ResizableExecutorpublic int getQueueSize()
public boolean resizePool(int corePoolSize,
int maximumPoolSize)
resizePool in interface ResizableExecutorpublic boolean resizeQueue(int capacity)
resizeQueue in interface ResizableExecutorprotected String getDomainInternal()
LifecycleMBeanBasegetDomainInternal in class LifecycleMBeanBaseprotected String getObjectNameKeyProperties()
LifecycleMBeanBaseObjectName that will be used to register this component.getObjectNameKeyProperties in class LifecycleMBeanBaseObjectNameCopyright © 2000-2021 Apache Software Foundation. All Rights Reserved.