Class BoundedScheduledExecutorService
- java.lang.Object
-
- com.google.common.collect.ForwardingObject
-
- com.google.common.util.concurrent.ForwardingExecutorService
-
- com.google.common.util.concurrent.ForwardingListeningExecutorService
-
- org.apache.bookkeeper.common.util.BoundedScheduledExecutorService
-
- All Implemented Interfaces:
com.google.common.util.concurrent.ListeningExecutorService,com.google.common.util.concurrent.ListeningScheduledExecutorService,java.util.concurrent.Executor,java.util.concurrent.ExecutorService,java.util.concurrent.ScheduledExecutorService
public class BoundedScheduledExecutorService extends com.google.common.util.concurrent.ForwardingListeningExecutorService implements com.google.common.util.concurrent.ListeningScheduledExecutorServiceImplementsListeningScheduledExecutorServiceand allows limiting the number of tasks to be scheduled in the thread's queue.
-
-
Constructor Summary
Constructors Constructor Description BoundedScheduledExecutorService(java.util.concurrent.ScheduledThreadPoolExecutor thread, int maxTasksInQueue)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected com.google.common.util.concurrent.ListeningExecutorServicedelegate()voidexecute(java.lang.Runnable command)<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> TinvokeAny(java.util.Collection<? extends java.util.concurrent.Callable<T>> tasks)<T> TinvokeAny(java.util.Collection<? extends java.util.concurrent.Callable<T>> tasks, long timeout, java.util.concurrent.TimeUnit unit)com.google.common.util.concurrent.ListenableScheduledFuture<?>schedule(java.lang.Runnable command, long delay, java.util.concurrent.TimeUnit unit)<V> com.google.common.util.concurrent.ListenableScheduledFuture<V>schedule(java.util.concurrent.Callable<V> callable, long delay, java.util.concurrent.TimeUnit unit)com.google.common.util.concurrent.ListenableScheduledFuture<?>scheduleAtFixedRate(java.lang.Runnable command, long initialDelay, long period, java.util.concurrent.TimeUnit unit)com.google.common.util.concurrent.ListenableScheduledFuture<?>scheduleWithFixedDelay(java.lang.Runnable command, long initialDelay, long delay, java.util.concurrent.TimeUnit unit)com.google.common.util.concurrent.ListenableFuture<?>submit(java.lang.Runnable task)<T> com.google.common.util.concurrent.ListenableFuture<T>submit(java.lang.Runnable task, T result)<T> com.google.common.util.concurrent.ListenableFuture<T>submit(java.util.concurrent.Callable<T> task)-
Methods inherited from class com.google.common.util.concurrent.ForwardingExecutorService
awaitTermination, isShutdown, isTerminated, shutdown, shutdownNow
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
-
-
-
Method Detail
-
delegate
protected com.google.common.util.concurrent.ListeningExecutorService delegate()
- Specified by:
delegatein classcom.google.common.util.concurrent.ForwardingListeningExecutorService
-
schedule
public com.google.common.util.concurrent.ListenableScheduledFuture<?> schedule(java.lang.Runnable command, long delay, java.util.concurrent.TimeUnit unit)- Specified by:
schedulein interfacecom.google.common.util.concurrent.ListeningScheduledExecutorService- Specified by:
schedulein interfacejava.util.concurrent.ScheduledExecutorService
-
schedule
public <V> com.google.common.util.concurrent.ListenableScheduledFuture<V> schedule(java.util.concurrent.Callable<V> callable, long delay, java.util.concurrent.TimeUnit unit)- Specified by:
schedulein interfacecom.google.common.util.concurrent.ListeningScheduledExecutorService- Specified by:
schedulein interfacejava.util.concurrent.ScheduledExecutorService
-
scheduleAtFixedRate
public com.google.common.util.concurrent.ListenableScheduledFuture<?> scheduleAtFixedRate(java.lang.Runnable command, long initialDelay, long period, java.util.concurrent.TimeUnit unit)- Specified by:
scheduleAtFixedRatein interfacecom.google.common.util.concurrent.ListeningScheduledExecutorService- Specified by:
scheduleAtFixedRatein interfacejava.util.concurrent.ScheduledExecutorService
-
scheduleWithFixedDelay
public com.google.common.util.concurrent.ListenableScheduledFuture<?> scheduleWithFixedDelay(java.lang.Runnable command, long initialDelay, long delay, java.util.concurrent.TimeUnit unit)- Specified by:
scheduleWithFixedDelayin interfacecom.google.common.util.concurrent.ListeningScheduledExecutorService- Specified by:
scheduleWithFixedDelayin interfacejava.util.concurrent.ScheduledExecutorService
-
submit
public <T> com.google.common.util.concurrent.ListenableFuture<T> submit(java.util.concurrent.Callable<T> task)
- Specified by:
submitin interfacejava.util.concurrent.ExecutorService- Specified by:
submitin interfacecom.google.common.util.concurrent.ListeningExecutorService- Overrides:
submitin classcom.google.common.util.concurrent.ForwardingListeningExecutorService
-
submit
public com.google.common.util.concurrent.ListenableFuture<?> submit(java.lang.Runnable task)
- Specified by:
submitin interfacejava.util.concurrent.ExecutorService- Specified by:
submitin interfacecom.google.common.util.concurrent.ListeningExecutorService- Overrides:
submitin classcom.google.common.util.concurrent.ForwardingListeningExecutorService
-
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:
invokeAllin interfacejava.util.concurrent.ExecutorService- Specified by:
invokeAllin interfacecom.google.common.util.concurrent.ListeningExecutorService- Overrides:
invokeAllin classcom.google.common.util.concurrent.ForwardingExecutorService- 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:
invokeAllin interfacejava.util.concurrent.ExecutorService- Specified by:
invokeAllin interfacecom.google.common.util.concurrent.ListeningExecutorService- Overrides:
invokeAllin classcom.google.common.util.concurrent.ForwardingExecutorService- 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:
invokeAnyin interfacejava.util.concurrent.ExecutorService- Overrides:
invokeAnyin classcom.google.common.util.concurrent.ForwardingExecutorService- Throws:
java.lang.InterruptedExceptionjava.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:
invokeAnyin interfacejava.util.concurrent.ExecutorService- Overrides:
invokeAnyin classcom.google.common.util.concurrent.ForwardingExecutorService- Throws:
java.lang.InterruptedExceptionjava.util.concurrent.ExecutionExceptionjava.util.concurrent.TimeoutException
-
submit
public <T> com.google.common.util.concurrent.ListenableFuture<T> submit(java.lang.Runnable task, T result)- Specified by:
submitin interfacejava.util.concurrent.ExecutorService- Specified by:
submitin interfacecom.google.common.util.concurrent.ListeningExecutorService- Overrides:
submitin classcom.google.common.util.concurrent.ForwardingListeningExecutorService
-
execute
public void execute(java.lang.Runnable command)
- Specified by:
executein interfacejava.util.concurrent.Executor- Overrides:
executein classcom.google.common.util.concurrent.ForwardingExecutorService
-
-