Package java.nio.channels
Interface Channel
- All Superinterfaces:
AutoCloseable,Closeable
- All Known Subinterfaces:
ByteChannel,GatheringByteChannel,InterruptibleChannel,ReadableByteChannel,ScatteringByteChannel,WritableByteChannel
- All Known Implementing Classes:
AbstractInterruptibleChannel,AbstractSelectableChannel,DatagramChannel,FileChannel,Pipe.SinkChannel,Pipe.SourceChannel,SelectableChannel,ServerSocketChannel,SocketChannel
public interface Channel extends Closeable
A channel is a conduit to I/O services covering such items as files, sockets,
hardware devices, I/O ports or some software component.
Channels are open upon creation, and can be closed explicitly. Once a channel
is closed it cannot be re-opened, and any attempts to perform I/O operations
on the closed channel result in a ClosedChannelException.
Particular implementations or sub-interfaces of Channel dictate
whether they are thread-safe or not.
-
Method Summary
-
Method Details
-
isOpen
boolean isOpen()Returns true if this channel is open. -
close
Closes an open channel. If the channel is already closed then this method has no effect. If there is a problem with closing the channel then the method throws an IOException and the exception contains reasons for the failure.If an attempt is made to perform an operation on a closed channel then a
ClosedChannelExceptionwill be thrown on that attempt.If multiple threads attempt to simultaneously close a channel, then only one thread will run the closure code, and others will be blocked until the first returns.
- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Throws:
IOException- if a problem occurs closing the channel.
-