public final class Channels extends Object
channels.
Unless otherwise specified, passing a null argument to any of the
methods defined here will cause a NullPointerException to be thrown.
- Since:
- 11
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interfaceChannels.SelectableChannelCloserAn object used to coordinate the closing of a selectable channel created byreadWriteSelectableChannel. -
Method Summary
Modifier and Type Method Description static SelectableChannelreadWriteSelectableChannel(FileDescriptor fd, Channels.SelectableChannelCloser closer)Creates a selectable channel to a file descriptor that supports anoperation-setofOP_READandOP_WRITE.
-
Method Details
-
readWriteSelectableChannel
public static SelectableChannel readWriteSelectableChannel(FileDescriptor fd, Channels.SelectableChannelCloser closer)Creates a selectable channel to a file descriptor that supports anoperation-setofOP_READandOP_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
Selectorfor 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 givenSelectableChannelCloseris 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
checkReadandcheckWritemethods are invoked to check that the caller has permission to both read from and write to the file descriptor.- Implementation Note:
- This method throws
UnsupportedOperationExceptionif the defaultSelectorProvideris 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 notvalidSecurityException- If denied by the security manager
-