Интерфейс Channels.SelectableChannelCloser
- Внешний класс:
Channels
public static interface Channels.SelectableChannelCloser
readWriteSelectableChannel.- С версии:
- 11
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
implCloseChannel |
Закрывает выбираемый канал. |
void |
implReleaseChannel |
Освобождает файловый дескриптор и все ресурсы для выбираемого канала, закрытого во время регистрации в одном или нескольких Selector. |
Подробное описание методов
implCloseChannel
void implCloseChannel(SelectableChannel sc) throws IOException
Этот метод вызывается методом close канала для фактического выполнения закрытия канала. Метод вызывается только в том случае, если канал ещё не закрыт, и реализация метода close канала вызывает его не более одного раза.
Реализация этого метода должна обеспечить немедленный возврат любого другого потока, заблокированного при выполнении операции ввода-вывода на канале: либо с выбросом исключения, либо с нормальным возвратом. Если канал registered в одном или нескольких Selector, файловый дескриптор не следует освобождать до вызова метода implReleaseChannel.
- Параметры:
-
sc— выбираемый канал - Выбрасывает:
-
IOException— если при закрытии файлового дескриптора возникает ошибка ввода-вывода - См. также:
implReleaseChannel
void implReleaseChannel(SelectableChannel sc) throws IOException
Selector. Этот метод предназначен для случаев, когда канал закрывается, будучи registered в одном или нескольких Selector. Канал может оставаться зарегистрированным некоторое время после закрытия. Этот метод вызывается, когда канал в конечном итоге отменяет регистрацию в последнем Selector, в котором он был зарегистрирован. Метод вызывается не более одного раза.
- Примечание API:
- Этот метод вызывается при удержании блокировки селектора и его набора выбранных ключей. Следует соблюдать особую осторожность, чтобы избежать взаимных блокировок с другими потоками, которые также синхронизируются по этим объектам.
- Параметры:
-
sc— закрытый выбираемый канал - Выбрасывает:
-
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/jdk.net/jdk/nio/Channels.SelectableChannelCloser.html