FileDocCategorySizeDatePackage
Pipe.javaAPI DocJava SE 5 API3492Fri Aug 26 14:57:10 BST 2005java.nio.channels

Pipe

public abstract class Pipe extends Object
A pair of channels that implements a unidirectional pipe.

A pipe consists of a pair of channels: A writable {@link Pipe.SinkChannel sink} channel and a readable {@link Pipe.SourceChannel source} channel. Once some bytes are written to the sink channel they can be read from source channel in exactly the order in which they were written.

Whether or not a thread writing bytes to a pipe will block until another thread reads those bytes, or some previously-written bytes, from the pipe is system-dependent and therefore unspecified. Many pipe implementations will buffer up to a certain number of bytes between the sink and source channels, but such buffering should not be assumed.

author
Mark Reinhold
author
JSR-51 Expert Group
version
1.20, 03/12/19
since
1.4

Fields Summary
Constructors Summary
protected Pipe()
Initializes a new instance of this class.

 
Methods Summary
public static java.nio.channels.Pipeopen()
Opens a pipe.

The new pipe is created by invoking the {@link java.nio.channels.spi.SelectorProvider#openPipe openPipe} method of the system-wide default {@link java.nio.channels.spi.SelectorProvider} object.

return
A new pipe
throws
IOException If an I/O error occurs

	return SelectorProvider.provider().openPipe();
    
public abstract java.nio.channels.Pipe$SinkChannelsink()
Returns this pipe's sink channel.

return
This pipe's sink channel

public abstract java.nio.channels.Pipe$SourceChannelsource()
Returns this pipe's source channel.

return
This pipe's source channel