Package java.nio.channels
Interface WritableByteChannel
- All Superinterfaces:
AutoCloseable,Channel,Closeable
- All Known Subinterfaces:
ByteChannel,GatheringByteChannel
- All Known Implementing Classes:
DatagramChannel,FileChannel,Pipe.SinkChannel,SocketChannel
public interface WritableByteChannel extends Channel
A
WritableByteChannel is a type of Channel that can write
bytes.
Write operations are synchronous on a WritableByteChannel, that is,
if a write is already in progress on the channel then subsequent writes will
block until the first write completes. It is undefined whether non-write
operations will block.
-
Method Summary
Modifier and Type Method Description intwrite(ByteBuffer buffer)Writes bytes from the given buffer to the channel.
-
Method Details
-
write
Writes bytes from the given buffer to the channel.The maximum number of bytes that will be written is the
remaining()number of bytes in the buffer when the method invoked. The bytes will be written from the buffer starting at the buffer'sposition.The call may block if other threads are also attempting to write on the same channel.
Upon completion, the buffer's
position()is updated to the end of the bytes that were written. The buffer'slimit()is unmodified.- Parameters:
buffer- the byte buffer containing the bytes to be written.- Returns:
- the number of bytes actually written.
- Throws:
NonWritableChannelException- if the channel was not opened for writing.ClosedChannelException- if the channel was already closed.AsynchronousCloseException- if another thread closes the channel during the write.ClosedByInterruptException- if another thread interrupt the calling thread during the write.IOException- another IO exception occurs, details are in the message.
-