Name

ScatteringByteChannel

Synopsis

This interface extends ReadableByteChannel and adds two additional read( ) methods that read bytes for a channel and “scatter” them to an array (or subarray) of buffers. These methods are passed an array of ByteBuffer objects, and, optionally, an offset and length that define the region of the array to be used. The read( ) method attempts to read enough bytes from the channel to fill each of the specified buffers in the order in which they appear in the buffer array (the “scattering” process is actually much more orderly and linear than the name implies). The return value of the method is the number of bytes actually read, which may be different than the sum of the remaining bytes in the buffers. See ReadableByteChannel for a discussion of exceptions and thread-safety that apply to these read( ) methods as well.

java.nio.channels.ScatteringByteChannel

Figure 13-36. java.nio.channels.ScatteringByteChannel

public interface ScatteringByteChannel extends ReadableByteChannel {
// Public Instance Methods
     long read(java.nio.ByteBuffer[ ] dsts) throws java.io.IOException;  
     long read(java.nio.ByteBuffer[ ] dsts, int offset, int length) 
throws java.io.IOException;  
}

Implementations

DatagramChannel, FileChannel, Pipe.SourceChannel, SocketChannel

Get Java in a Nutshell, 5th Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.