java.util.concurrent.Executor
, java.util.concurrent.ExecutorService
public final class QueueResizingEsThreadPoolExecutor extends EsThreadPoolExecutor
ResizableBlockingQueue
according to Little's Law.EsThreadPoolExecutor.ShutdownListener
java.util.concurrent.ThreadPoolExecutor.AbortPolicy, java.util.concurrent.ThreadPoolExecutor.CallerRunsPolicy, java.util.concurrent.ThreadPoolExecutor.DiscardOldestPolicy, java.util.concurrent.ThreadPoolExecutor.DiscardPolicy
Modifier and Type | Field | Description |
---|---|---|
static double |
EWMA_ALPHA |
Modifier and Type | Method | Description |
---|---|---|
protected void |
afterExecute(java.lang.Runnable r,
java.lang.Throwable t) |
|
protected void |
appendThreadPoolExecutorDetails(java.lang.StringBuilder sb) |
Append details about this thread pool to the specified
StringBuilder . |
protected void |
doExecute(java.lang.Runnable command) |
|
int |
getCurrentCapacity() |
Returns the current queue capacity
|
int |
getCurrentQueueSize() |
Returns the current queue size (operations that are queued)
|
double |
getTaskExecutionEWMA() |
Returns the exponentially weighted moving average of the task execution time
|
invokeAll, invokeAll, invokeAny, invokeAny, newTaskFor, newTaskFor, submit, submit, submit
execute, getTasks, shutdown, terminated, toString, unwrap, wrapRunnable
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
allowCoreThreadTimeOut, allowsCoreThreadTimeOut, awaitTermination, beforeExecute, finalize, getActiveCount, getCompletedTaskCount, getCorePoolSize, getKeepAliveTime, getLargestPoolSize, getMaximumPoolSize, getPoolSize, getQueue, getRejectedExecutionHandler, getTaskCount, getThreadFactory, isShutdown, isTerminated, isTerminating, prestartAllCoreThreads, prestartCoreThread, purge, remove, setCorePoolSize, setKeepAliveTime, setMaximumPoolSize, setRejectedExecutionHandler, setThreadFactory, shutdown, shutdownNow
protected void doExecute(java.lang.Runnable command)
doExecute
in class EsThreadPoolExecutor
public int getCurrentCapacity()
public double getTaskExecutionEWMA()
public int getCurrentQueueSize()
protected void afterExecute(java.lang.Runnable r, java.lang.Throwable t)
afterExecute
in class EsThreadPoolExecutor
protected void appendThreadPoolExecutorDetails(java.lang.StringBuilder sb)
EsThreadPoolExecutor
StringBuilder
. All details should be appended as key/value pairs in
the form "%s = %s, "appendThreadPoolExecutorDetails
in class EsThreadPoolExecutor
sb
- the StringBuilder
to append to