public abstract class Pipe extends Object
 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.
| Modifier and Type | Class and Description | 
|---|---|
| static class  | Pipe.SinkChannelA channel representing the writable end of a  Pipe. | 
| static class  | Pipe.SourceChannelA channel representing the readable end of a  Pipe. | 
| Modifier | Constructor and Description | 
|---|---|
| protected  | Pipe()Initializes a new instance of this class. | 
| Modifier and Type | Method and Description | 
|---|---|
| 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. | 
public abstract Pipe.SourceChannel source()
public abstract Pipe.SinkChannel sink()
public static Pipe open() throws IOException
 The new pipe is created by invoking the openPipe method of the
 system-wide default SelectorProvider
 object.  
IOException - If an I/O error occurs Submit a bug or feature 
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
 Copyright © 1993, 2025, Oracle and/or its affiliates.  All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.