Package org.infinispan.util.concurrent
Class BlockingTaskAwareExecutorServiceImpl
java.lang.Object
java.util.concurrent.AbstractExecutorService
org.infinispan.util.concurrent.BlockingTaskAwareExecutorServiceImpl
- All Implemented Interfaces:
Executor,ExecutorService,BlockingTaskAwareExecutorService
public class BlockingTaskAwareExecutorServiceImpl
extends AbstractExecutorService
implements BlockingTaskAwareExecutorService
A special executor service that accepts a
BlockingRunnable. This special runnable gives hints about the code
to be running in order to avoiding put a runnable that will block the thread. In this way, only when the runnable
says that is ready, it is sent to the real executor service- Since:
- 5.3
- Author:
- Pedro Ruivo
-
Constructor Summary
ConstructorsConstructorDescriptionBlockingTaskAwareExecutorServiceImpl(ExecutorService executorService, TimeService timeService) -
Method Summary
Modifier and TypeMethodDescriptionbooleanawaitTermination(long timeout, TimeUnit unit) final voidIt checks for tasks ready to be processed in thisExecutorService.voidfinal voidexecute(BlockingRunnable runnable) Executes the given command at some time in the future when the command is less probably to block a thread.booleanbooleanvoidshutdown()Methods inherited from class java.util.concurrent.AbstractExecutorService
invokeAll, invokeAll, invokeAny, invokeAny, newTaskFor, newTaskFor, submit, submit, submit
-
Constructor Details
-
BlockingTaskAwareExecutorServiceImpl
public BlockingTaskAwareExecutorServiceImpl(ExecutorService executorService, TimeService timeService)
-
-
Method Details
-
execute
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
-
shutdown
public void shutdown()- Specified by:
shutdownin interfaceExecutorService
-
shutdownNow
- Specified by:
shutdownNowin interfaceExecutorService
-
isShutdown
public boolean isShutdown()- Specified by:
isShutdownin interfaceExecutorService
-
isTerminated
public boolean isTerminated()- Specified by:
isTerminatedin interfaceExecutorService
-
awaitTermination
- Specified by:
awaitTerminationin interfaceExecutorService- Throws:
InterruptedException
-
checkForReadyTasks
public final 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
-
execute
-
getExecutorService
-