All Classes and Interfaces
Class
Description
Base class for services that can implement
AbstractExecutionThreadService.startUp()
, AbstractExecutionThreadService.run()
and AbstractExecutionThreadService.shutDown()
methods.An abstract implementation of
ListenableFuture
, intended for advanced users only.Base class for services that do not need a thread while "running" but may need one during startup
and shutdown.
Abstract
ListeningExecutorService
implementation that creates ListenableFuture
instances for each Runnable
and Callable
submitted to it.Base class for services that can implement
AbstractScheduledService.startUp()
and AbstractScheduledService.shutDown()
but while in
the "running" state need to perform a periodic task.A
AbstractScheduledService.Scheduler
that provides a convenient way for the AbstractScheduledService
to
use a dynamically changing schedule.A value object that represents an absolute delay until a task should be invoked.
A scheduler defines the policy for how the
AbstractScheduledService
should run its
task.Base class for implementing services that can handle
AbstractService.doStart()
and AbstractService.doStop()
requests, responding to them with AbstractService.notifyStarted()
and AbstractService.notifyStopped()
callbacks.Computes a value, possibly asynchronously.
Transforms a value, possibly asynchronously.
A
double
value that may be updated atomically.A
double
array in which elements may be updated atomically.A map containing
long
values that can be atomically updated.Static utility methods pertaining to classes in the
java.util.concurrent.atomic
package.Static utility methods pertaining to the
Callable
interface.A step in a pipeline of an asynchronous computation.
An operation that computes a
ClosingFuture
of a result.A function from an input to a
ClosingFuture
of a result.An operation that computes a result.
A function from an input to a result.
A builder of a
ClosingFuture
step that is derived from more than one input step.An operation that returns a
ClosingFuture
result and may throw an exception.An operation that returns a result and may throw an exception.
A generic
ClosingFuture.Combiner
that lets you use a lambda or method reference to combine two ClosingFuture
s.ClosingFuture.Combiner2.AsyncClosingFunction2<V1 extends @Nullable Object,V2 extends @Nullable Object,U extends @Nullable Object>
A function that returns a
ClosingFuture
when applied to the values of the two futures
passed to ClosingFuture.whenAllSucceed(ClosingFuture, ClosingFuture)
.ClosingFuture.Combiner2.ClosingFunction2<V1 extends @Nullable Object,V2 extends @Nullable Object,U extends @Nullable Object>
A function that returns a value when applied to the values of the two futures passed to
ClosingFuture.whenAllSucceed(ClosingFuture, ClosingFuture)
.ClosingFuture.Combiner3<V1 extends @Nullable Object,V2 extends @Nullable Object,V3 extends @Nullable Object>
A generic
ClosingFuture.Combiner
that lets you use a lambda or method reference to combine three
ClosingFuture
s.ClosingFuture.Combiner3.AsyncClosingFunction3<V1 extends @Nullable Object,V2 extends @Nullable Object,V3 extends @Nullable Object,U extends @Nullable Object>
A function that returns a
ClosingFuture
when applied to the values of the three
futures passed to ClosingFuture.whenAllSucceed(ClosingFuture, ClosingFuture, ClosingFuture)
.ClosingFuture.Combiner3.ClosingFunction3<V1 extends @Nullable Object,V2 extends @Nullable Object,V3 extends @Nullable Object,U extends @Nullable Object>
A function that returns a value when applied to the values of the three futures passed to
ClosingFuture.whenAllSucceed(ClosingFuture, ClosingFuture, ClosingFuture)
.ClosingFuture.Combiner4<V1 extends @Nullable Object,V2 extends @Nullable Object,V3 extends @Nullable Object,V4 extends @Nullable Object>
A generic
ClosingFuture.Combiner
that lets you use a lambda or method reference to combine four
ClosingFuture
s.ClosingFuture.Combiner4.AsyncClosingFunction4<V1 extends @Nullable Object,V2 extends @Nullable Object,V3 extends @Nullable Object,V4 extends @Nullable Object,U extends @Nullable Object>
A function that returns a
ClosingFuture
when applied to the values of the four
futures passed to ClosingFuture.whenAllSucceed(ClosingFuture, ClosingFuture, ClosingFuture, ClosingFuture)
.ClosingFuture.Combiner4.ClosingFunction4<V1 extends @Nullable Object,V2 extends @Nullable Object,V3 extends @Nullable Object,V4 extends @Nullable Object,U extends @Nullable Object>
A function that returns a value when applied to the values of the four futures passed to
ClosingFuture.whenAllSucceed(ClosingFuture, ClosingFuture, ClosingFuture, ClosingFuture)
.ClosingFuture.Combiner5<V1 extends @Nullable Object,V2 extends @Nullable Object,V3 extends @Nullable Object,V4 extends @Nullable Object,V5 extends @Nullable Object>
A generic
ClosingFuture.Combiner
that lets you use a lambda or method reference to combine five
ClosingFuture
s.ClosingFuture.Combiner5.AsyncClosingFunction5<V1 extends @Nullable Object,V2 extends @Nullable Object,V3 extends @Nullable Object,V4 extends @Nullable Object,V5 extends @Nullable Object,U extends @Nullable Object>
A function that returns a
ClosingFuture
when applied to the values of the five
futures passed to ClosingFuture.whenAllSucceed(ClosingFuture, ClosingFuture, ClosingFuture, ClosingFuture, ClosingFuture)
.ClosingFuture.Combiner5.ClosingFunction5<V1 extends @Nullable Object,V2 extends @Nullable Object,V3 extends @Nullable Object,V4 extends @Nullable Object,V5 extends @Nullable Object,U extends @Nullable Object>
A function that returns a value when applied to the values of the five futures passed to
ClosingFuture.whenAllSucceed(ClosingFuture, ClosingFuture, ClosingFuture, ClosingFuture, ClosingFuture)
.An object that can capture objects to be closed later, when a
ClosingFuture
pipeline is
done.An object that can return the value of the
ClosingFuture
s that are passed to ClosingFuture.whenAllComplete(Iterable)
or ClosingFuture.whenAllSucceed(Iterable)
.An object that holds the final result of an asynchronous
ClosingFuture
operation and
allows the user to close all the closeable objects that were captured during it for later
closing.Represents an operation that accepts a
ClosingFuture.ValueAndCloser
for the last step in a ClosingFuture
pipeline.The
CycleDetectingLockFactory
creates ReentrantLock
instances and ReentrantReadWriteLock
instances that detect potential deadlock by checking for cycles in lock
acquisition order.Pre-defined
CycleDetectingLockFactory.Policy
implementations.Encapsulates the action to be taken when a potential deadlock is encountered.
Represents a detected cycle in lock acquisition ordering.
A
CycleDetectingLockFactory.WithExplicitOrdering
provides the additional enforcement of
an application-specified ordering of lock acquisitions.Error
variant of ExecutionException
.A support class for
ListenableFuture
implementations to manage their listeners.Serializes execution of tasks, somewhat like an "asynchronous
synchronized
block." Each
enqueued callable will not be submitted to its associated executor until the
previous callable has returned -- and, if the previous callable was an AsyncCallable
, not
until the Future
it returned is done (successful, failed, or
cancelled).A TimeLimiter implementation which actually does not attempt to limit time at all.
A
ListenableFuture
that supports fluent chains of operations.A
BlockingDeque
which forwards all its method calls to another BlockingDeque
.A
BlockingQueue
which forwards all its method calls to another BlockingQueue
.An executor service which forwards all its method calls to another executor service.
A
Future
which forwards all its method calls to another future.A simplified version of
ForwardingFuture
where subclasses can pass in an already
constructed Future
as the delegate.A
ListenableFuture
which forwards all its method calls to another future.A simplified version of
ForwardingListenableFuture
where subclasses can pass in an
already constructed ListenableFuture
as the delegate.A listening executor service which forwards all its method calls to another listening executor
service.
A callback for accepting the results of a
Future
computation
asynchronously.Static utility methods pertaining to the
Future
interface.A helper to create a new
ListenableFuture
whose result is generated from a combination
of input futures.Utilities necessary for working with libraries that supply plain
Future
instances.A
Future
that accepts completion listeners.A
FutureTask
that also implements the ListenableFuture
interface.Helper interface to implement both
ListenableFuture
and ScheduledFuture
.An
ExecutorService
that returns ListenableFuture
instances.A
ScheduledExecutorService
that returns ListenableFuture
instances from its
ExecutorService
methods.A synchronization abstraction supporting waiting on arbitrary boolean conditions.
A boolean condition for which a thread may wait.
A rate limiter.
Static utility methods pertaining to the
Runnable
interface.An object with an operational state, plus asynchronous
Service.startAsync()
and Service.stopAsync()
lifecycle methods to transition between states.A listener for the various state changes that a
Service
goes through in its lifecycle.The lifecycle states of a service.
A manager for monitoring and controlling a set of services.
A listener for the aggregate state changes of the services that are under management.
A
ListenableFuture
whose result can be set by a SettableFuture.set(Object)
, SettableFuture.setException(Throwable)
or SettableFuture.setFuture(ListenableFuture)
call.A TimeLimiter that runs method calls in the background using an
ExecutorService
.A striped
Lock/Semaphore/ReadWriteLock
.A ThreadFactory builder, providing any combination of these features:
whether threads should be marked as daemon threads
a naming format
a thread priority
an uncaught exception handler
a backing thread factory
Imposes a time limit on method calls.
Factories for
Thread.UncaughtExceptionHandler
instances.Unchecked variant of
ExecutionException
.Unchecked version of
TimeoutException
.Utilities for treating interruptible operations as uninterruptible.