- 封闭类:
-
Channels
public static interface Channels.SelectableChannelCloser
用于协调由
readWriteSelectableChannel
创建的可选择通道的关闭的对象。
- 自 JDK 版本:
- 11
-
Method Summary
-
Method Details
-
implCloseChannel
关闭可选择通道。此方法由通道的close方法调用,以执行关闭通道的实际工作。只有在通道尚未关闭时才会调用此方法,并且通道的close实现永远不会多次调用此方法。
此方法的实现必须安排任何在通道上的 I/O 操作中被阻塞的其他线程立即返回,可以通过抛出异常或正常返回来实现。如果通道已经
注册
到一个或多个Selector
,则在调用implReleaseChannel
方法之前不应释放文件描述符。- 参数:
-
sc
- 可选择通道 - 抛出:
-
IOException
- 如果关闭文件描述符时发生 I/O 错误 - 参见:
-
implReleaseChannel
释放已注册到一个或多个Selector
的可选择通道的文件描述符和任何资源。此方法用于在通道
注册
到一个或多个Selector
时关闭通道的情况。通道在关闭后可能会保持注册状态一段时间。当通道最终从最后一个注册的Selector
中取消注册时,将调用此方法。最多调用一次。- API 注意:
- 在选择器及其选择键集合上同步时调用此方法。必须非常小心,以避免与其他同步在这些对象上的线程发生死锁。
- 参数:
-
sc
- 已关闭的可选择通道 - 抛出:
-
IOException
- 如果发生 I/O 错误 - 参见:
-