Spec-Zone.ru › OpenJDK 24

Класс AsynchronousChannelProvider

java.lang.Object
java.nio.channels.spi.AsynchronousChannelProvider
public abstract class AsynchronousChannelProvider extends Object
Класс поставщика услуг для асинхронных каналов.

Поставщик асинхронного канала — это конкретный подкласс этого класса, имеющий конструктор без аргументов и реализующий абстрактные методы, указанные ниже. Данное выполнение виртуальной машины Java поддерживает единственный системный экземпляр поставщика по умолчанию, который возвращается методом provider. Первое вызов этого метода найдёт поставщика по умолчанию, как указано ниже.

Все методы в этом классе безопасны для использования в нескольких потоках одновременно.

С:
1.7

Краткое описание конструкторов

AsynchronousChannelProvider()
Модификатор Конструктор Описание
protected
Инициализирует новый экземпляр этого класса.

Краткое описание методов

Модификатор и тип Метод Описание
abstract AsynchronousChannelGroup openAsynchronousChannelGroup(int nThreads, ThreadFactory threadFactory)
Создаёт новую группу асинхронных каналов с фиксированным пулом потоков.
abstract AsynchronousChannelGroup openAsynchronousChannelGroup(ExecutorService executor, int initialSize)
Создаёт новую группу асинхронных каналов с заданным пулом потоков.
abstract AsynchronousServerSocketChannel openAsynchronousServerSocketChannel(AsynchronousChannelGroup group)
Открывает асинхронный канал серверного сокета.
abstract AsynchronousSocketChannel openAsynchronousSocketChannel(AsynchronousChannelGroup group)
Открывает асинхронный сокет-канал.
static AsynchronousChannelProvider provider()
Возвращает системного асинхронного поставщика каналов по умолчанию для данного вызова виртуальной машины Java.

Методы, объявленные в классе java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Подробное описание конструкторов

AsynchronousChannelProvider

protected AsynchronousChannelProvider()
Инициализирует новый экземпляр этого класса.

Подробное описание методов

provider

public static AsynchronousChannelProvider provider()
Возвращает системного асинхронного поставщика каналов по умолчанию для данного вызова виртуальной машины Java.

Первое вызов этого метода находит объект поставщика по умолчанию следующим образом:

  1. Если системная переменная java.nio.channels.spi.AsynchronousChannelProvider определена, то она считается полным квалифицированным именем конкретного класса поставщика. Класс загружается и создаётся; если этот процесс завершается неудачно, то выбрасывается неопределённая ошибка.

  2. Если класс поставщика был установлен в JAR-файле, видимом для загрузчика системных классов, и этот JAR-файл содержит файл конфигурации поставщика под названием java.nio.channels.spi.AsynchronousChannelProvider в каталоге ресурсов META-INF/services, то первым указанным в этом файле именем класса. Класс загружается и создаётся; если этот процесс завершается неудачно, то выбрасывается неопределённая ошибка.

  3. В конечном итоге, если ни один поставщик не был указан ни одним из вышеперечисленных способов, то создаётся системный поставщик по умолчанию и результат возвращается.

Последующие вызовы этого метода возвращают поставщика, который был возвращён при первом вызове.

Возвращает:
Системный поставщик асинхронных каналов по умолчанию

openAsynchronousChannelGroup

public abstract AsynchronousChannelGroup openAsynchronousChannelGroup(int nThreads, ThreadFactory threadFactory) throws IOException
Создаёт новую группу асинхронных каналов с фиксированным пулом потоков.
Параметры:
nThreads - Количество потоков в пуле
threadFactory - Фабрика для использования при создании новых потоков
Возвращает:
Новая группа асинхронных каналов
Исключения:
IllegalArgumentException - Если nThreads <= 0
IOException - Если происходит ошибка ввода-вывода
См. также:
  • AsynchronousChannelGroup.withFixedThreadPool(int, java.util.concurrent.ThreadFactory)

openAsynchronousChannelGroup

public abstract AsynchronousChannelGroup openAsynchronousChannelGroup(ExecutorService executor, int initialSize) throws IOException
Создаёт новую группу асинхронных каналов с заданным пулом потоков.
Параметры:
executor - Пул потоков
initialSize - Значение >=0 или отрицательное значение для реализации специфичного значения по умолчанию
Возвращает:
Новая группа асинхронных каналов
Исключения:
IOException - Если происходит ошибка ввода-вывода
См. также:
  • AsynchronousChannelGroup.withCachedThreadPool(java.util.concurrent.ExecutorService, int)

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://download.java.net/java/early_access/jdk24/docs/api/java.base/java/nio/channels/spi/AsynchronousChannelProvider.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API