Package org.infinispan.executors
Class LazyInitializingBlockingTaskAwareExecutorService
java.lang.Object
org.infinispan.executors.ManageableExecutorService<ExecutorService>
org.infinispan.executors.LazyInitializingBlockingTaskAwareExecutorService
- All Implemented Interfaces:
Executor
,ExecutorService
,BlockingTaskAwareExecutorService
public final class LazyInitializingBlockingTaskAwareExecutorService
extends ManageableExecutorService<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
ConstructorDescriptionLazyInitializingBlockingTaskAwareExecutorService
(ThreadPoolExecutorFactory<ExecutorService> executorFactory, ThreadFactory threadFactory, TimeService timeService) -
Method Summary
Modifier and TypeMethodDescriptionboolean
awaitTermination
(long timeout, TimeUnit unit) void
It checks for tasks ready to be processed in thisExecutorService
.void
void
execute
(BlockingRunnable runnable) Executes the given command at some time in the future when the command is less probably to block a thread.invokeAll
(Collection<? extends Callable<T>> tasks) invokeAll
(Collection<? extends Callable<T>> tasks, long timeout, TimeUnit unit) <T> T
invokeAny
(Collection<? extends Callable<T>> tasks) <T> T
invokeAny
(Collection<? extends Callable<T>> tasks, long timeout, TimeUnit unit) boolean
boolean
void
shutdown()
Future
<?> <T> Future
<T> <T> Future
<T> Methods inherited from class org.infinispan.executors.ManageableExecutorService
getActiveCount, getKeepAliveTime, getLargestPoolSize, getMaximumPoolSize, getPoolSize, getQueueSize, setKeepAliveTime, setMaximumPoolSize
-
Constructor Details
-
LazyInitializingBlockingTaskAwareExecutorService
public LazyInitializingBlockingTaskAwareExecutorService(ThreadPoolExecutorFactory<ExecutorService> executorFactory, ThreadFactory threadFactory, TimeService timeService)
-
-
Method Details
-
execute
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 interfaceExecutorService
-
shutdownNow
- Specified by:
shutdownNow
in interfaceExecutorService
-
isShutdown
public boolean isShutdown()- Specified by:
isShutdown
in interfaceExecutorService
-
isTerminated
public boolean isTerminated()- Specified by:
isTerminated
in interfaceExecutorService
-
awaitTermination
- Specified by:
awaitTermination
in interfaceExecutorService
- Throws:
InterruptedException
-
submit
- Specified by:
submit
in interfaceExecutorService
-
submit
- Specified by:
submit
in interfaceExecutorService
-
submit
- Specified by:
submit
in interfaceExecutorService
-
invokeAll
public <T> List<Future<T>> invokeAll(Collection<? extends Callable<T>> tasks) throws InterruptedException - Specified by:
invokeAll
in interfaceExecutorService
- Throws:
InterruptedException
-
invokeAll
public <T> List<Future<T>> invokeAll(Collection<? extends Callable<T>> tasks, long timeout, TimeUnit unit) throws InterruptedException - Specified by:
invokeAll
in interfaceExecutorService
- Throws:
InterruptedException
-
invokeAny
public <T> T invokeAny(Collection<? extends Callable<T>> tasks) throws InterruptedException, ExecutionException - Specified by:
invokeAny
in interfaceExecutorService
- Throws:
InterruptedException
ExecutionException
-
invokeAny
public <T> T invokeAny(Collection<? extends Callable<T>> tasks, long timeout, TimeUnit unit) throws InterruptedException, ExecutionException, TimeoutException - Specified by:
invokeAny
in interfaceExecutorService
- Throws:
InterruptedException
ExecutionException
TimeoutException
-
execute
-
getExecutorService
-