Package org.infinispan.executors
Class LazyInitializingBlockingTaskAwareExecutorService
- java.lang.Object
-
- org.infinispan.executors.ManageableExecutorService<java.util.concurrent.ExecutorService>
-
- org.infinispan.executors.LazyInitializingBlockingTaskAwareExecutorService
-
- All Implemented Interfaces:
java.util.concurrent.Executor,java.util.concurrent.ExecutorService,BlockingTaskAwareExecutorService
public final class LazyInitializingBlockingTaskAwareExecutorService extends ManageableExecutorService<java.util.concurrent.ExecutorService> implements BlockingTaskAwareExecutorService
A delegating executor that lazily constructs and initializes the underlying executor.- Since:
- 5.3
- Author:
- Pedro Ruivo
-
-
Field Summary
-
Fields inherited from class org.infinispan.executors.ManageableExecutorService
executor
-
-
Constructor Summary
Constructors Constructor Description LazyInitializingBlockingTaskAwareExecutorService(ThreadPoolExecutorFactory<java.util.concurrent.ExecutorService> executorFactory, java.util.concurrent.ThreadFactory threadFactory, TimeService timeService, java.lang.String controllerThreadName)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanawaitTermination(long timeout, java.util.concurrent.TimeUnit unit)voidcheckForReadyTasks()It checks for tasks ready to be processed in thisExecutorService.voidexecute(java.lang.Runnable command)voidexecute(BlockingRunnable runnable)Executes the given command at some time in the future when the command is less probably to block a thread.BlockingTaskAwareExecutorServicegetExecutorService()<T> java.util.List<java.util.concurrent.Future<T>>invokeAll(java.util.Collection<? extends java.util.concurrent.Callable<T>> tasks)<T> java.util.List<java.util.concurrent.Future<T>>invokeAll(java.util.Collection<? extends java.util.concurrent.Callable<T>> tasks, long timeout, java.util.concurrent.TimeUnit unit)<T> TinvokeAny(java.util.Collection<? extends java.util.concurrent.Callable<T>> tasks)<T> TinvokeAny(java.util.Collection<? extends java.util.concurrent.Callable<T>> tasks, long timeout, java.util.concurrent.TimeUnit unit)booleanisShutdown()booleanisTerminated()voidshutdown()java.util.List<java.lang.Runnable>shutdownNow()java.util.concurrent.Future<?>submit(java.lang.Runnable task)<T> java.util.concurrent.Future<T>submit(java.lang.Runnable task, T result)<T> java.util.concurrent.Future<T>submit(java.util.concurrent.Callable<T> task)-
Methods inherited from class org.infinispan.executors.ManageableExecutorService
getActiveCount, getKeepAliveTime, getLargestPoolSize, getMaximumPoolSize, getPoolSize, getQueueSize, setKeepAliveTime, setMaximumPoolSize
-
-
-
-
Constructor Detail
-
LazyInitializingBlockingTaskAwareExecutorService
public LazyInitializingBlockingTaskAwareExecutorService(ThreadPoolExecutorFactory<java.util.concurrent.ExecutorService> executorFactory, java.util.concurrent.ThreadFactory threadFactory, TimeService timeService, java.lang.String controllerThreadName)
-
-
Method Detail
-
execute
public void execute(BlockingRunnable runnable)
Description copied from interface:BlockingTaskAwareExecutorServiceExecutes the given command at some time in the future when the command is less probably to block a thread.- Specified by:
executein interfaceBlockingTaskAwareExecutorService- Parameters:
runnable- the command to execute
-
checkForReadyTasks
public void checkForReadyTasks()
Description copied from interface:BlockingTaskAwareExecutorServiceIt checks for tasks ready to be processed in thisExecutorService. The invocation is done asynchronously, so the invoker is never blocked.- Specified by:
checkForReadyTasksin interfaceBlockingTaskAwareExecutorService
-
shutdown
public void shutdown()
- Specified by:
shutdownin interfacejava.util.concurrent.ExecutorService
-
shutdownNow
public java.util.List<java.lang.Runnable> shutdownNow()
- Specified by:
shutdownNowin interfacejava.util.concurrent.ExecutorService
-
isShutdown
public boolean isShutdown()
- Specified by:
isShutdownin interfacejava.util.concurrent.ExecutorService
-
isTerminated
public boolean isTerminated()
- Specified by:
isTerminatedin interfacejava.util.concurrent.ExecutorService
-
awaitTermination
public boolean awaitTermination(long timeout, java.util.concurrent.TimeUnit unit) throws java.lang.InterruptedException- Specified by:
awaitTerminationin interfacejava.util.concurrent.ExecutorService- Throws:
java.lang.InterruptedException
-
submit
public <T> java.util.concurrent.Future<T> submit(java.util.concurrent.Callable<T> task)
- Specified by:
submitin interfacejava.util.concurrent.ExecutorService
-
submit
public <T> java.util.concurrent.Future<T> submit(java.lang.Runnable task, T result)- Specified by:
submitin interfacejava.util.concurrent.ExecutorService
-
submit
public java.util.concurrent.Future<?> submit(java.lang.Runnable task)
- Specified by:
submitin interfacejava.util.concurrent.ExecutorService
-
invokeAll
public <T> java.util.List<java.util.concurrent.Future<T>> invokeAll(java.util.Collection<? extends java.util.concurrent.Callable<T>> tasks) throws java.lang.InterruptedException- Specified by:
invokeAllin interfacejava.util.concurrent.ExecutorService- Throws:
java.lang.InterruptedException
-
invokeAll
public <T> java.util.List<java.util.concurrent.Future<T>> invokeAll(java.util.Collection<? extends java.util.concurrent.Callable<T>> tasks, long timeout, java.util.concurrent.TimeUnit unit) throws java.lang.InterruptedException- Specified by:
invokeAllin interfacejava.util.concurrent.ExecutorService- Throws:
java.lang.InterruptedException
-
invokeAny
public <T> T invokeAny(java.util.Collection<? extends java.util.concurrent.Callable<T>> tasks) throws java.lang.InterruptedException, java.util.concurrent.ExecutionException- Specified by:
invokeAnyin interfacejava.util.concurrent.ExecutorService- Throws:
java.lang.InterruptedExceptionjava.util.concurrent.ExecutionException
-
invokeAny
public <T> T invokeAny(java.util.Collection<? extends java.util.concurrent.Callable<T>> tasks, long timeout, java.util.concurrent.TimeUnit unit) throws java.lang.InterruptedException, java.util.concurrent.ExecutionException, java.util.concurrent.TimeoutException- Specified by:
invokeAnyin interfacejava.util.concurrent.ExecutorService- Throws:
java.lang.InterruptedExceptionjava.util.concurrent.ExecutionExceptionjava.util.concurrent.TimeoutException
-
execute
public void execute(java.lang.Runnable command)
- Specified by:
executein interfacejava.util.concurrent.Executor
-
getExecutorService
public BlockingTaskAwareExecutorService getExecutorService()
-
-