Package org.infinispan.executors
Class LazyInitializingExecutorService
java.lang.Object
org.infinispan.executors.ManageableExecutorService<ExecutorService>
org.infinispan.executors.LazyInitializingExecutorService
- All Implemented Interfaces:
Executor
,ExecutorService
public final class LazyInitializingExecutorService
extends ManageableExecutorService<ExecutorService>
implements ExecutorService
A delegating executor that lazily constructs and initializes the underlying executor, since unused JDK executors
are expensive.
- Since:
- 5.1
- Author:
- Manik Surtani
-
Field Summary
Fields inherited from class org.infinispan.executors.ManageableExecutorService
executor
-
Constructor Summary
ConstructorDescriptionLazyInitializingExecutorService
(ThreadPoolExecutorFactory<ExecutorService> executorFactory, ThreadFactory threadFactory) -
Method Summary
Modifier and TypeMethodDescriptionboolean
awaitTermination
(long timeout, TimeUnit unit) void
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
-
LazyInitializingExecutorService
public LazyInitializingExecutorService(ThreadPoolExecutorFactory<ExecutorService> executorFactory, ThreadFactory threadFactory)
-
-
Method Details
-
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
-