Package org.infinispan.util.concurrent
Interface BlockingTaskAwareExecutorService
- All Superinterfaces:
Executor
,ExecutorService
- All Known Implementing Classes:
BlockingTaskAwareExecutorServiceImpl
,LazyInitializingBlockingTaskAwareExecutorService
Executor service that is aware of
BlockingRunnable
and only dispatch the runnable to a thread when it has low
(or no) probability of blocking the thread.
However, it is not aware of the changes in the state so you must invoke checkForReadyTasks()
to notify
this that some runnable may be ready to be processed.- Since:
- 5.3
- Author:
- Pedro Ruivo
-
Method Summary
Modifier and TypeMethodDescriptionvoid
It checks for tasks ready to be processed in thisExecutorService
.void
execute
(BlockingRunnable runnable) Executes the given command at some time in the future when the command is less probably to block a thread.Methods inherited from interface java.util.concurrent.ExecutorService
awaitTermination, invokeAll, invokeAll, invokeAny, invokeAny, isShutdown, isTerminated, shutdown, shutdownNow, submit, submit, submit
-
Method Details
-
execute
Executes the given command at some time in the future when the command is less probably to block a thread.- Parameters:
runnable
- the command to execute
-
checkForReadyTasks
void checkForReadyTasks()It checks for tasks ready to be processed in thisExecutorService
. The invocation is done asynchronously, so the invoker is never blocked.
-