@CheckReturnValue @ParametersAreNonnullByDefault
Package com.google.common.util.concurrent
Concurrency utilities.
Commonly used types include ListenableFuture and
Service.
Commonly used utilities include Futures,
MoreExecutors, and
ThreadFactoryBuilder.
This package is a part of the open-source Guava library.
-
Interface Summary Interface Description AsyncCallable<V> Computes a value, possibly asynchronously.AsyncFunction<I,O> Transforms a value, possibly asynchronously.CheckedFuture<V,X extends java.lang.Exception> ACheckedFutureis aListenableFuturethat includes versions of thegetmethods that can throw a checked exception.CycleDetectingLockFactory.Policy Encapsulates the action to be taken when a potential deadlock is encountered.FutureCallback<V> A callback for accepting the results of aFuturecomputation asynchronously.ListenableFuture<V> AFuturethat accepts completion listeners.ListenableScheduledFuture<V> Helper interface to implement bothListenableFutureandScheduledFuture.ListeningExecutorService AnExecutorServicethat returnsListenableFutureinstances.ListeningScheduledExecutorService AScheduledExecutorServicethat returnsListenableFutureinstances from itsExecutorServicemethods.Service An object with an operational state, plus asynchronousService.startAsync()andService.stopAsync()lifecycle methods to transition between states.TimeLimiter Produces proxies that impose a time limit on method calls to the proxied object. -
Class Summary Class Description AbstractCheckedFuture<V,X extends java.lang.Exception> A delegating wrapper around aListenableFuturethat adds support for theAbstractCheckedFuture.checkedGet()andAbstractCheckedFuture.checkedGet(long, TimeUnit)methods.AbstractExecutionThreadService Base class for services that can implementAbstractExecutionThreadService.startUp(),AbstractExecutionThreadService.run()andAbstractExecutionThreadService.shutDown()methods.AbstractFuture<V> An abstract implementation ofListenableFuture, intended for advanced users only.AbstractIdleService Base class for services that do not need a thread while "running" but may need one during startup and shutdown.AbstractListeningExecutorService AbstractListeningExecutorServiceimplementation that createsListenableFutureinstances for eachRunnableandCallablesubmitted to it.AbstractScheduledService Base class for services that can implementAbstractScheduledService.startUp()andAbstractScheduledService.shutDown()but while in the "running" state need to perform a periodic task.AbstractScheduledService.CustomScheduler AAbstractScheduledService.Schedulerthat provides a convenient way for theAbstractScheduledServiceto use a dynamically changing schedule.AbstractScheduledService.CustomScheduler.Schedule A value object that represents an absolute delay until a task should be invoked.AbstractScheduledService.Scheduler A scheduler defines the policy for how theAbstractScheduledServiceshould run its task.AbstractService Base class for implementing services that can handleAbstractService.doStart()andAbstractService.doStop()requests, responding to them withAbstractService.notifyStarted()andAbstractService.notifyStopped()callbacks.AtomicDouble Adoublevalue that may be updated atomically.AtomicDoubleArray Adoublearray in which elements may be updated atomically.AtomicLongMap<K> A map containinglongvalues that can be atomically updated.Atomics Static utility methods pertaining to classes in thejava.util.concurrent.atomicpackage.Callables Static utility methods pertaining to theCallableinterface.CycleDetectingLockFactory TheCycleDetectingLockFactorycreatesReentrantLockinstances andReentrantReadWriteLockinstances that detect potential deadlock by checking for cycles in lock acquisition order.CycleDetectingLockFactory.WithExplicitOrdering<E extends java.lang.Enum<E>> ACycleDetectingLockFactory.WithExplicitOrderingprovides the additional enforcement of an application-specified ordering of lock acquisitions.ExecutionList A support class forListenableFutureimplementations to manage their listeners.FakeTimeLimiter A TimeLimiter implementation which actually does not attempt to limit time at all.ForwardingBlockingQueue<E> ABlockingQueuewhich forwards all its method calls to anotherBlockingQueue.ForwardingCheckedFuture<V,X extends java.lang.Exception> A future which forwards all its method calls to another future.ForwardingCheckedFuture.SimpleForwardingCheckedFuture<V,X extends java.lang.Exception> A simplified version ofForwardingCheckedFuturewhere subclasses can pass in an already constructedCheckedFutureas the delegate.ForwardingExecutorService An executor service which forwards all its method calls to another executor service.ForwardingFuture<V> AFuturewhich forwards all its method calls to another future.ForwardingFuture.SimpleForwardingFuture<V> A simplified version ofForwardingFuturewhere subclasses can pass in an already constructedFutureas the delegate.ForwardingListenableFuture<V> AListenableFuturewhich forwards all its method calls to another future.ForwardingListenableFuture.SimpleForwardingListenableFuture<V> A simplified version ofForwardingListenableFuturewhere subclasses can pass in an already constructedListenableFutureas the delegate.ForwardingListeningExecutorService A listening executor service which forwards all its method calls to another listening executor service.Futures Static utility methods pertaining to theFutureinterface.Futures.FutureCombiner<V> A helper to create a newListenableFuturewhose result is generated from a combination of input futures.JdkFutureAdapters Utilities necessary for working with libraries that supply plainFutureinstances.ListenableFutureTask<V> AFutureTaskthat also implements theListenableFutureinterface.Monitor A synchronization abstraction supporting waiting on arbitrary boolean conditions.Monitor.Guard A boolean condition for which a thread may wait.MoreExecutors Factory and utility methods forExecutor,ExecutorService, andThreadFactory.RateLimiter A rate limiter.Runnables Static utility methods pertaining to theRunnableinterface.Service.Listener A listener for the various state changes that aServicegoes through in its lifecycle.ServiceManager A manager for monitoring and controlling a set of services.ServiceManager.Listener A listener for the aggregate state changes of the services that are under management.SettableFuture<V> AListenableFuturewhose result can be set by aSettableFuture.set(Object),SettableFuture.setException(Throwable)orSettableFuture.setFuture(ListenableFuture)call.SimpleTimeLimiter A TimeLimiter that runs method calls in the background using anExecutorService.Striped<L> A stripedLock/Semaphore/ReadWriteLock.ThreadFactoryBuilder 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 factoryUncaughtExceptionHandlers Factories forThread.UncaughtExceptionHandlerinstances.Uninterruptibles Utilities for treating interruptible operations as uninterruptible. -
Enum Summary Enum Description CycleDetectingLockFactory.Policies Pre-definedCycleDetectingLockFactory.Policyimplementations.Service.State The lifecycle states of a service. -
Exception Summary Exception Description CycleDetectingLockFactory.PotentialDeadlockException Represents a detected cycle in lock acquisition ordering.UncheckedExecutionException Unchecked variant ofExecutionException.UncheckedTimeoutException Unchecked version ofTimeoutException. -
Error Summary Error Description ExecutionError Errorvariant ofExecutionException.