Package java.nio.channels
Interface GatheringByteChannel
-
- All Superinterfaces:
AutoCloseable,Channel,Closeable,WritableByteChannel
- All Known Implementing Classes:
DatagramChannel,FileChannel,Pipe.SinkChannel,SocketChannel
public interface GatheringByteChannel extends WritableByteChannel
The interface for channels that can write a set of buffers in a single operation. The corresponding interface for read operations isScatteringByteChannel.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description longwrite(ByteBuffer[] buffers)Writes bytes from all the given buffers to a channel.longwrite(ByteBuffer[] buffers, int offset, int length)Attempts to write allremaining()bytes fromlengthbyte buffers, in order, starting atbuffers[offset].-
Methods inherited from interface java.nio.channels.WritableByteChannel
write
-
-
-
-
Method Detail
-
write
long write(ByteBuffer[] buffers) throws IOException
Writes bytes from all the given buffers to a channel.This method is equivalent to:
write(buffers, 0, buffers.length);- Parameters:
buffers- the buffers containing bytes to be written.- Returns:
- the number of bytes actually written.
- Throws:
AsynchronousCloseException- if the channel is closed by another thread during this write operation.ClosedByInterruptException- if another thread interrupts the calling thread while the operation is in progress. The interrupt state of the calling thread is set and the channel is closed.ClosedChannelException- if the channel is closed.IndexOutOfBoundsException- ifoffset < 0orlength < 0, or ifoffset + lengthis greater than the size ofbuffers.IOException- if another I/O error occurs; details are in the message.NonWritableChannelException- if the channel has not been opened in a mode that permits writing.
-
write
long write(ByteBuffer[] buffers, int offset, int length) throws IOException
Attempts to write allremaining()bytes fromlengthbyte buffers, in order, starting atbuffers[offset]. The number of bytes actually written is returned.If a write operation is in progress, subsequent threads will block until the write is completed and then contend for the ability to write.
- Parameters:
buffers- the array of byte buffers that is the source for bytes written to the channel.offset- the index of the first buffer inbuffersto get bytes from.length- the number of buffers to get bytes from.- Returns:
- the number of bytes actually written.
- Throws:
AsynchronousCloseException- if the channel is closed by another thread during this write operation.ClosedByInterruptException- if another thread interrupts the calling thread while the operation is in progress. The interrupt state of the calling thread is set and the channel is closed.ClosedChannelException- if the channel is closed.IndexOutOfBoundsException- ifoffset < 0orlength < 0, or ifoffset + lengthis greater than the size ofbuffers.IOException- if another I/O error occurs; details are in the message.NonWritableChannelException- if the channel was not opened for writing.
-
-