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 boolean
awaitTermination(long timeout, java.util.concurrent.TimeUnit unit)
void
checkForReadyTasks()
It checks for tasks ready to be processed in thisExecutorService
.void
execute(java.lang.Runnable command)
void
execute(BlockingRunnable runnable)
Executes the given command at some time in the future when the command is less probably to block a thread.BlockingTaskAwareExecutorService
getExecutorService()
<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> T
invokeAny(java.util.Collection<? extends java.util.concurrent.Callable<T>> tasks)
<T> T
invokeAny(java.util.Collection<? extends java.util.concurrent.Callable<T>> tasks, long timeout, java.util.concurrent.TimeUnit unit)
boolean
isShutdown()
boolean
isTerminated()
void
shutdown()
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:BlockingTaskAwareExecutorService
Executes the given command at some time in the future when the command is less probably to block a thread.- Specified by:
execute
in interfaceBlockingTaskAwareExecutorService
- Parameters:
runnable
- the command to execute
-
checkForReadyTasks
public void checkForReadyTasks()
Description copied from interface:BlockingTaskAwareExecutorService
It checks for tasks ready to be processed in thisExecutorService
. The invocation is done asynchronously, so the invoker is never blocked.- Specified by:
checkForReadyTasks
in interfaceBlockingTaskAwareExecutorService
-
shutdown
public void shutdown()
- Specified by:
shutdown
in interfacejava.util.concurrent.ExecutorService
-
shutdownNow
public java.util.List<java.lang.Runnable> shutdownNow()
- Specified by:
shutdownNow
in interfacejava.util.concurrent.ExecutorService
-
isShutdown
public boolean isShutdown()
- Specified by:
isShutdown
in interfacejava.util.concurrent.ExecutorService
-
isTerminated
public boolean isTerminated()
- Specified by:
isTerminated
in interfacejava.util.concurrent.ExecutorService
-
awaitTermination
public boolean awaitTermination(long timeout, java.util.concurrent.TimeUnit unit) throws java.lang.InterruptedException
- Specified by:
awaitTermination
in 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:
submit
in interfacejava.util.concurrent.ExecutorService
-
submit
public <T> java.util.concurrent.Future<T> submit(java.lang.Runnable task, T result)
- Specified by:
submit
in interfacejava.util.concurrent.ExecutorService
-
submit
public java.util.concurrent.Future<?> submit(java.lang.Runnable task)
- Specified by:
submit
in 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:
invokeAll
in 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:
invokeAll
in 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:
invokeAny
in interfacejava.util.concurrent.ExecutorService
- Throws:
java.lang.InterruptedException
java.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:
invokeAny
in interfacejava.util.concurrent.ExecutorService
- Throws:
java.lang.InterruptedException
java.util.concurrent.ExecutionException
java.util.concurrent.TimeoutException
-
execute
public void execute(java.lang.Runnable command)
- Specified by:
execute
in interfacejava.util.concurrent.Executor
-
getExecutorService
public BlockingTaskAwareExecutorService getExecutorService()
-
-