- java.lang.Object
-
- jdk.nio.Channels
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
Channels.SelectableChannelCloser
An object used to coordinate the closing of a selectable channel created byreadWriteSelectableChannel
.
-
Method Summary
Modifier and Type Method Description static SelectableChannel
readWriteSelectableChannel(FileDescriptor fd, Channels.SelectableChannelCloser closer)
Creates a selectable channel to a file descriptor that supports anoperation-set
ofOP_READ
andOP_WRITE
.
-
-
-
Method Detail
-
readWriteSelectableChannel
public static SelectableChannel readWriteSelectableChannel(FileDescriptor fd, Channels.SelectableChannelCloser closer)
Creates a selectable channel to a file descriptor that supports anoperation-set
ofOP_READ
andOP_WRITE
. The selectable channel will be created by the defaultSelectorProvider
.The given file descriptor is a socket or resource that can be multiplexed by a
Selector
for read and write readiness. Great care is required to coordinate direct use of the file descriptor with the use of the selectable channel. In particular, changing the blocking mode or closing the file descriptor without careful coordination will result in unspecified and unsafe side effects. The givenSelectableChannelCloser
is invoked to close the file descriptor and to coordinate the closing when the channel is registered with aSelector
.If there is a security manager set then its
checkRead
andcheckWrite
methods are invoked to check that the caller has permission to both read from and write to the file descriptor.- Implementation Note:
- This method throws
UnsupportedOperationException
if the defaultSelectorProvider
is not the JDK built-in implementation. - Parameters:
fd
- The file descriptorcloser
- The object to close the channel- Returns:
- The selectable channel
- Throws:
IllegalArgumentException
- If the file descriptor is notvalid
SecurityException
- If denied by the security manager
-
-