| Package | Description | 
|---|---|
| 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.spi | 
 Service-provider classes for the  
java.nio.file package. | 
| java.util.concurrent | 
 Utility classes commonly useful in concurrent programming. 
 | 
| Modifier and Type | Method | Description | 
|---|---|---|
static AsynchronousFileChannel | 
AsynchronousFileChannel.open(Path file,
    Set<? extends OpenOption> options,
    ExecutorService executor,
    FileAttribute<?>... attrs)
Opens or creates a file for reading and/or writing, returning an
 asynchronous file channel to access the file. 
 | 
|
static AsynchronousChannelGroup | 
AsynchronousChannelGroup.withCachedThreadPool(ExecutorService executor,
                    int initialSize)
Creates an asynchronous channel group with a given thread pool that
 creates new threads as needed. 
 | 
|
static AsynchronousChannelGroup | 
AsynchronousChannelGroup.withThreadPool(ExecutorService executor)
Creates an asynchronous channel group with a given thread pool. 
 | 
| Modifier and Type | Method | Description | 
|---|---|---|
abstract AsynchronousChannelGroup | 
AsynchronousChannelProvider.openAsynchronousChannelGroup(ExecutorService executor,
                            int initialSize)
Constructs a new asynchronous channel group with the given thread pool. 
 | 
| Modifier and Type | Method | Description | 
|---|---|---|
AsynchronousFileChannel | 
FileSystemProvider.newAsynchronousFileChannel(Path path,
                          Set<? extends OpenOption> options,
                          ExecutorService executor,
                          FileAttribute<?>... attrs)
Opens or creates a file for reading and/or writing, returning an
 asynchronous file channel to access the file. 
 | 
| Modifier and Type | Interface | Description | 
|---|---|---|
interface  | 
ScheduledExecutorService
An  
ExecutorService that can schedule commands to run after a given
 delay, or to execute periodically. | 
| Modifier and Type | Class | Description | 
|---|---|---|
class  | 
AbstractExecutorService
Provides default implementations of  
ExecutorService
 execution methods. | 
|
class  | 
ForkJoinPool
An  
ExecutorService for running ForkJoinTasks. | 
|
class  | 
ScheduledThreadPoolExecutor
A  
ThreadPoolExecutor that can additionally schedule
 commands to run after a given delay, or to execute
 periodically. | 
|
class  | 
ThreadPoolExecutor
An  
ExecutorService that executes each submitted task using
 one of possibly several pooled threads, normally configured
 using Executors factory methods. | 
| Modifier and Type | Method | Description | 
|---|---|---|
static ExecutorService | 
Executors.newCachedThreadPool()
Creates a thread pool that creates new threads as needed, but
 will reuse previously constructed threads when they are
 available. 
 | 
|
static ExecutorService | 
Executors.newCachedThreadPool(ThreadFactory threadFactory)
Creates a thread pool that creates new threads as needed, but
 will reuse previously constructed threads when they are
 available, and uses the provided
 ThreadFactory to create new threads when needed. 
 | 
|
static ExecutorService | 
Executors.newFixedThreadPool(int nThreads)
Creates a thread pool that reuses a fixed number of threads
 operating off a shared unbounded queue. 
 | 
|
static ExecutorService | 
Executors.newFixedThreadPool(int nThreads,
                  ThreadFactory threadFactory)
Creates a thread pool that reuses a fixed number of threads
 operating off a shared unbounded queue, using the provided
 ThreadFactory to create new threads when needed. 
 | 
|
static ExecutorService | 
Executors.newSingleThreadExecutor()
Creates an Executor that uses a single worker thread operating
 off an unbounded queue. 
 | 
|
static ExecutorService | 
Executors.newSingleThreadExecutor(ThreadFactory threadFactory)
Creates an Executor that uses a single worker thread operating
 off an unbounded queue, and uses the provided ThreadFactory to
 create a new thread when needed. 
 | 
|
static ExecutorService | 
Executors.newWorkStealingPool()
Creates a work-stealing thread pool using all
  
available processors
 as its target parallelism level. | 
|
static ExecutorService | 
Executors.newWorkStealingPool(int parallelism)
Creates a thread pool that maintains enough threads to support
 the given parallelism level, and may use multiple queues to
 reduce contention. 
 | 
|
static ExecutorService | 
Executors.unconfigurableExecutorService(ExecutorService executor)
Returns an object that delegates all defined  
ExecutorService methods to the given executor, but not any
 other methods that might otherwise be accessible using
 casts. | 
| Modifier and Type | Method | Description | 
|---|---|---|
static ExecutorService | 
Executors.unconfigurableExecutorService(ExecutorService executor)
Returns an object that delegates all defined  
ExecutorService methods to the given executor, but not any
 other methods that might otherwise be accessible using
 casts. | 
 Submit a bug or feature 
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
 Copyright © 1993, 2025, Oracle and/or its affiliates.  All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.