# Uses of Package
java.util.concurrent

Packages that use java.util.concurrent
Package
Description
com.sun.net.httpserver
Provides a simple high-level Http server API, which can be used to build embedded HTTP servers.
com.sun.source.util
Provides utilities for operations on abstract syntax trees (AST).
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
HTTP Client and WebSocket APIs
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.security.auth
This package provides a framework for authentication and authorization.
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.

- Classes in java.util.concurrent used by com.sun.net.httpserver
  Class
  Description
  Executor
  An object that executes submitted `Runnable` tasks.
- Classes in java.util.concurrent used by com.sun.source.util
  Class
  Description
  Callable
  A task that returns a result and may throw an exception.
- Classes in java.util.concurrent used by java.lang
  Class
  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.
  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.lang.ref
  Class
  Description
  ThreadFactory
  An object that creates new threads on demand.
- Classes in java.util.concurrent used by java.net.http
  Class
  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.
  CompletionStage
  A stage of a possibly asynchronous computation, that performs an action or computes a value when another CompletionStage completes.
  ConcurrentMap
  A `Map` providing thread safety and atomicity guarantees.
  Executor
  An object that executes submitted `Runnable` tasks.
  Flow.Publisher
  A producer of items (and related control messages) received by Subscribers.
  Flow.Subscriber
  A receiver of messages.
- Classes in java.util.concurrent used by java.nio.channels
  Class
  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
  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
  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
  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
  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
  Description
  Executor
  An object that executes submitted `Runnable` tasks.
- Classes in java.util.concurrent used by java.util.concurrent
  Class
  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.
  Future.State
  Represents the computation state.
  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 (with period 264) 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
  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
  Description
  ConcurrentMap
  A `Map` providing thread safety and atomicity guarantees.
- Classes in java.util.concurrent used by javax.management
  Class
  Description
  Executor
  An object that executes submitted `Runnable` tasks.
- Classes in java.util.concurrent used by javax.security.auth
  Class
  Description
  Callable
  A task that returns a result and may throw an exception.
  CompletionException
  Exception thrown when an error or other exception is encountered in the course of completing a result or task.
- Classes in java.util.concurrent used by javax.swing
  Class
  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
  Description
  Callable
  A task that returns a result and may throw an exception.