Pipe

public abstract class Pipe
extends Object

java.lang.Object
   ↳ java.nio.channels.Pipe


A pair of channels that implements a unidirectional pipe.

A pipe consists of a pair of channels: A writable sink channel and a readable source channel. Once some bytes are written to the sink channel they can be read from source channel in exactlyAthe 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.

Summary

Nested classes

class Pipe.SinkChannel

A channel representing the writable end of a Pipe

class Pipe.SourceChannel

A channel representing the readable end of a Pipe

Protected constructors

Pipe()

Initializes a new instance of this class.

Public methods

static Pipe open()

Opens a pipe.

abstract Pipe.SinkChannel sink()

Returns this pipe's sink channel.

abstract Pipe.SourceChannel source()

Returns this pipe's source channel.

Inherited methods

Protected constructors

Pipe

added in API level 1
Pipe ()

Initializes a new instance of this class.

Public methods

open

added in API level 1
Pipe open ()

Opens a pipe.

The new pipe is created by invoking the openPipe method of the system-wide default SelectorProvider object.

Returns
Pipe A new pipe

Throws
IOException If an I/O error occurs

sink

added in API level 1
Pipe.SinkChannel sink ()

Returns this pipe's sink channel.

Returns
Pipe.SinkChannel This pipe's sink channel

source

added in API level 1
Pipe.SourceChannel source ()

Returns this pipe's source channel.

Returns
Pipe.SourceChannel This pipe's source channel