# Uses of Package
java.util.concurrent

Packages that use java.util.concurrent
java.lang: Provides classes that are fundamental to the design of the Java programming language.
java.lang.ref: Provides reference-object classes, which support a limited degree of interaction with the garbage collector.
java.net.http: High level HTTP API
java.nio.channels: Defines channels, which represent connections to entities that are capable of performing I/O operations, such as files and sockets; defines selectors, for multiplexed, non-blocking I/O operations.
java.nio.channels.spi: Service-provider classes for the `java.nio.channels` package.
java.nio.file: Defines interfaces and classes for the Java virtual machine to access files, file attributes, and file systems.
java.nio.file.attribute: Interfaces and classes providing access to file and file system attributes.
java.nio.file.spi: Service-provider classes for the `java.nio.file` package.
java.sql: Provides the API for accessing and processing data stored in a data source (usually a relational database) using the Java™ programming language.
java.util.concurrent: Utility classes commonly useful in concurrent programming.
java.util.concurrent.locks: Interfaces and classes providing a framework for locking and waiting for conditions that is distinct from built-in synchronization and monitors.
java.util.stream: Classes to support functional-style operations on streams of elements, such as map-reduce transformations on collections.
javax.management: Provides the core classes for the Java Management Extensions.
javax.swing: Provides a set of "lightweight" (all-Java language) components that, to the maximum degree possible, work the same on all platforms.
javax.tools: Provides interfaces for tools which can be invoked from a program, for example, compilers.
javax.xml.ws: This package contains the core JAX-WS APIs.
javax.xml.ws.spi: This package defines SPIs for JAX-WS.

Classes in java.util.concurrent used by java.lang
Class and Description
CompletableFuture A `Future` that may be explicitly completed (setting its value and status), and may be used as a `CompletionStage`, supporting dependent functions and actions that trigger upon its completion.
TimeUnit A `TimeUnit` represents time durations at a given unit of granularity and provides utility methods to convert across units, and to perform timing and delay operations in these units.

Classes in java.util.concurrent used by java.lang.ref
Class and Description
ThreadFactory An object that creates new threads on demand.

Classes in java.util.concurrent used by java.net.http
Class and Description
CompletableFuture A `Future` that may be explicitly completed (setting its value and status), and may be used as a `CompletionStage`, supporting dependent functions and actions that trigger upon its completion.
ExecutorService An `Executor` that provides methods to manage termination and methods that can produce a `Future` for tracking progress of one or more asynchronous tasks.
TimeUnit A `TimeUnit` represents time durations at a given unit of granularity and provides utility methods to convert across units, and to perform timing and delay operations in these units.

Classes in java.util.concurrent used by java.nio.channels
Class and Description
ExecutorService An `Executor` that provides methods to manage termination and methods that can produce a `Future` for tracking progress of one or more asynchronous tasks.
Future A `Future` represents the result of an asynchronous computation.
ThreadFactory An object that creates new threads on demand.
TimeUnit A `TimeUnit` represents time durations at a given unit of granularity and provides utility methods to convert across units, and to perform timing and delay operations in these units.

Classes in java.util.concurrent used by java.nio.channels.spi
Class and Description
ExecutorService An `Executor` that provides methods to manage termination and methods that can produce a `Future` for tracking progress of one or more asynchronous tasks.
ThreadFactory An object that creates new threads on demand.

Classes in java.util.concurrent used by java.nio.file
Class and Description
TimeUnit A `TimeUnit` represents time durations at a given unit of granularity and provides utility methods to convert across units, and to perform timing and delay operations in these units.

Classes in java.util.concurrent used by java.nio.file.attribute
Class and Description
TimeUnit A `TimeUnit` represents time durations at a given unit of granularity and provides utility methods to convert across units, and to perform timing and delay operations in these units.

Classes in java.util.concurrent used by java.nio.file.spi
Class and Description
ExecutorService An `Executor` that provides methods to manage termination and methods that can produce a `Future` for tracking progress of one or more asynchronous tasks.

Classes in java.util.concurrent used by java.sql
Class and Description
Executor An object that executes submitted `Runnable` tasks.

Classes in java.util.concurrent used by java.util.concurrent
Class and Description
AbstractExecutorService Provides default implementations of `ExecutorService` execution methods.
BlockingDeque A `Deque` that additionally supports blocking operations that wait for the deque to become non-empty when retrieving an element, and wait for space to become available in the deque when storing an element.
BlockingQueue A `Queue` that additionally supports operations that wait for the queue to become non-empty when retrieving an element, and wait for space to become available in the queue when storing an element.
BrokenBarrierException Exception thrown when a thread tries to wait upon a barrier that is in a broken state, or which enters the broken state while the thread is waiting.
Callable A task that returns a result and may throw an exception.
CompletableFuture A `Future` that may be explicitly completed (setting its value and status), and may be used as a `CompletionStage`, supporting dependent functions and actions that trigger upon its completion.
CompletionService A service that decouples the production of new asynchronous tasks from the consumption of the results of completed tasks.
CompletionStage A stage of a possibly asynchronous computation, that performs an action or computes a value when another CompletionStage completes.
ConcurrentHashMap.KeySetView A view of a ConcurrentHashMap as a `Set` of keys, in which additions may optionally be enabled by mapping to a common value.
ConcurrentMap A `Map` providing thread safety and atomicity guarantees.
ConcurrentNavigableMap A `ConcurrentMap` supporting `NavigableMap` operations, and recursively so for its navigable sub-maps.
ConcurrentSkipListMap A scalable concurrent `ConcurrentNavigableMap` implementation.
ConcurrentSkipListSet A scalable concurrent `NavigableSet` implementation based on a `ConcurrentSkipListMap`.
CountedCompleter A `ForkJoinTask` with a completion action performed when triggered and there are no remaining pending actions.
Delayed A mix-in style interface for marking objects that should be acted upon after a given delay.
ExecutionException Exception thrown when attempting to retrieve the result of a task that aborted by throwing an exception.
Executor An object that executes submitted `Runnable` tasks.
ExecutorService An `Executor` that provides methods to manage termination and methods that can produce a `Future` for tracking progress of one or more asynchronous tasks.
Flow.Publisher A producer of items (and related control messages) received by Subscribers.
Flow.Subscriber A receiver of messages.
Flow.Subscription Message control linking a `Flow.Publisher` and `Flow.Subscriber`.
ForkJoinPool An `ExecutorService` for running `ForkJoinTask`s.
ForkJoinPool.ForkJoinWorkerThreadFactory Factory for creating new `ForkJoinWorkerThread`s.
ForkJoinPool.ManagedBlocker Interface for extending managed parallelism for tasks running in `ForkJoinPool`s.
ForkJoinTask Abstract base class for tasks that run within a `ForkJoinPool`.
ForkJoinWorkerThread A thread managed by a `ForkJoinPool`, which executes `ForkJoinTask`s.
Future A `Future` represents the result of an asynchronous computation.
Phaser A reusable synchronization barrier, similar in functionality to `CyclicBarrier` and `CountDownLatch` but supporting more flexible usage.
RejectedExecutionHandler A handler for tasks that cannot be executed by a `ThreadPoolExecutor`.
RunnableFuture A `Future` that is `Runnable`.
RunnableScheduledFuture A `ScheduledFuture` that is `Runnable`.
ScheduledExecutorService An `ExecutorService` that can schedule commands to run after a given delay, or to execute periodically.
ScheduledFuture A delayed result-bearing action that can be cancelled.
ThreadFactory An object that creates new threads on demand.
ThreadLocalRandom A random number generator isolated to the current thread.
ThreadPoolExecutor An `ExecutorService` that executes each submitted task using one of possibly several pooled threads, normally configured using `Executors` factory methods.
TimeoutException Exception thrown when a blocking operation times out.
TimeUnit A `TimeUnit` represents time durations at a given unit of granularity and provides utility methods to convert across units, and to perform timing and delay operations in these units.
TransferQueue A `BlockingQueue` in which producers may wait for consumers to receive elements.

Classes in java.util.concurrent used by java.util.concurrent.locks
Class and Description
TimeUnit A `TimeUnit` represents time durations at a given unit of granularity and provides utility methods to convert across units, and to perform timing and delay operations in these units.

Classes in java.util.concurrent used by java.util.stream
Class and Description
ConcurrentMap A `Map` providing thread safety and atomicity guarantees.

Classes in java.util.concurrent used by javax.management
Class and Description
Executor An object that executes submitted `Runnable` tasks.

Classes in java.util.concurrent used by javax.swing
Class and Description
ExecutionException Exception thrown when attempting to retrieve the result of a task that aborted by throwing an exception.
Future A `Future` represents the result of an asynchronous computation.
RunnableFuture A `Future` that is `Runnable`.
TimeoutException Exception thrown when a blocking operation times out.
TimeUnit A `TimeUnit` represents time durations at a given unit of granularity and provides utility methods to convert across units, and to perform timing and delay operations in these units.

Classes in java.util.concurrent used by javax.tools
Class and Description
Callable A task that returns a result and may throw an exception.

Classes in java.util.concurrent used by javax.xml.ws
Class and Description
Executor An object that executes submitted `Runnable` tasks.
Future A `Future` represents the result of an asynchronous computation.

Classes in java.util.concurrent used by javax.xml.ws.spi
Class and Description
Executor An object that executes submitted `Runnable` tasks.