Класс AsynchronousChannelProvider
public abstract class AsynchronousChannelProvider extends Object
Поставщик асинхронных каналов — это конкретный подкласс данного класса с конструктором без аргументов, реализующий указанные ниже абстрактные методы. Для каждого вызова виртуальной машины Java существует единственный общесистемный экземпляр поставщика по умолчанию, который возвращается методом provider. При первом вызове этого метода поставщик по умолчанию определяется описанным ниже способом.
Все методы этого класса безопасно использовать из нескольких параллельно работающих потоков.
- Начиная с версии:
- 1.7
Краткое описание конструкторов
| Модификатор | Конструктор | Описание |
|---|---|---|
protected |
Инициализирует новый экземпляр этого класса. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
abstract AsynchronousChannelGroup |
openAsynchronousChannelGroup |
Создает новую группу асинхронных каналов с пулом потоков фиксированного размера. |
abstract AsynchronousChannelGroup |
openAsynchronousChannelGroup |
Создает новую группу асинхронных каналов с заданным пулом потоков. |
abstract AsynchronousServerSocketChannel |
openAsynchronousServerSocketChannel |
Открывает асинхронный канал серверного сокета. |
abstract AsynchronousSocketChannel |
openAsynchronousSocketChannel |
Открывает асинхронный канал сокета. |
static AsynchronousChannelProvider |
provider() |
Возвращает общесистемный поставщик асинхронных каналов по умолчанию для данного вызова виртуальной машины Java. |
Подробное описание конструкторов
AsynchronousChannelProvider
protected AsynchronousChannelProvider()
Подробное описание методов
provider
public static AsynchronousChannelProvider provider()
При первом вызове этого метода объект поставщика по умолчанию определяется следующим образом:
Если задано системное свойство
java.nio.channels.spi.AsynchronousChannelProvider, оно считается полным именем конкретного класса поставщика. Класс загружается и создается его экземпляр; если этот процесс завершается неудачно, возникает ошибка неопределенного типа.Если класс поставщика установлен в JAR-файле, доступном системному загрузчику классов, и этот JAR-файл содержит файл конфигурации поставщика с именем
java.nio.channels.spi.AsynchronousChannelProviderв каталоге ресурсовMETA-INF/services, используется первое указанное в этом файле имя класса. Класс загружается и создается его экземпляр; если этот процесс завершается неудачно, возникает ошибка неопределенного типа.Наконец, если ни один поставщик не был указан ни одним из перечисленных выше способов, создается экземпляр системного класса поставщика по умолчанию и возвращается результат.
При последующих вызовах этого метода возвращается поставщик, полученный при первом вызове.
- Возвращает:
- Общесистемный поставщик AsynchronousChannel по умолчанию
openAsynchronousChannelGroup
public abstract AsynchronousChannelGroup openAsynchronousChannelGroup(int nThreads, ThreadFactory threadFactory) throws IOException
- Параметры:
-
nThreads— Количество потоков в пуле -
threadFactory— Фабрика для создания новых потоков - Возвращает:
- Новая группа асинхронных каналов
- Вызывает:
-
IllegalArgumentException— ЕслиnThreads <= 0 -
IOException— При возникновении ошибки ввода-вывода - См. также:
openAsynchronousChannelGroup
public abstract AsynchronousChannelGroup openAsynchronousChannelGroup(ExecutorService executor, int initialSize) throws IOException
- Параметры:
-
executor— Пул потоков -
initialSize— Значение>=0или отрицательное значение для использования значения по умолчанию, зависящего от реализации - Возвращает:
- Новая группа асинхронных каналов
- Вызывает:
-
IOException— При возникновении ошибки ввода-вывода - См. также:
openAsynchronousServerSocketChannel
public abstract AsynchronousServerSocketChannel openAsynchronousServerSocketChannel(AsynchronousChannelGroup group) throws IOException
- Параметры:
-
group— Группа, к которой привязывается канал, илиnullдля привязки к группе по умолчанию - Возвращает:
- Новый канал
- Вызывает:
-
IllegalChannelGroupException— Если поставщик, создавший группу, отличается от этого поставщика -
ShutdownChannelGroupException— Если работа группы завершена -
IOException— При возникновении ошибки ввода-вывода
openAsynchronousSocketChannel
public abstract AsynchronousSocketChannel openAsynchronousSocketChannel(AsynchronousChannelGroup group) throws IOException
- Параметры:
-
group— Группа, к которой привязывается канал, илиnullдля привязки к группе по умолчанию - Возвращает:
- Новый канал
- Вызывает:
-
IllegalChannelGroupException— Если поставщик, создавший группу, отличается от этого поставщика -
ShutdownChannelGroupException— Если работа группы завершена -
IOException— При возникновении ошибки ввода-вывода
© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/nio/channels/spi/AsynchronousChannelProvider.html