public class PipedOutputStream extends OutputStream
PipedOutputStream object by one thread and data is
 read from the connected PipedInputStream by some
 other thread. Attempting to use both objects from a single thread
 is not recommended as it may deadlock the thread.
 The pipe is said to be  broken  if a
 thread that was reading data bytes from the connected piped input
 stream is no longer alive.PipedInputStream| Constructor | Description | 
|---|---|
| PipedOutputStream() | Creates a piped output stream that is not yet connected to a
 piped input stream. | 
| PipedOutputStream(PipedInputStream snk) | Creates a piped output stream connected to the specified piped
 input stream. | 
| Modifier and Type | Method | Description | 
|---|---|---|
| void | close() | Closes this piped output stream and releases any system resources
 associated with this stream. | 
| void | connect(PipedInputStream snk) | Connects this piped output stream to a receiver. | 
| void | flush() | Flushes this output stream and forces any buffered output bytes
 to be written out. | 
| void | write(byte[] b,
     int off,
     int len) | Writes  lenbytes from the specified byte array
 starting at offsetoffto this piped output stream. | 
| void | write(int b) | Writes the specified  byteto the piped output stream. | 
writepublic PipedOutputStream(PipedInputStream snk) throws IOException
snk.snk - The piped input stream to connect to.IOException - if an I/O error occurs.public PipedOutputStream()
public void connect(PipedInputStream snk) throws IOException
IOException is thrown.
 
 If snk is an unconnected piped input stream and
 src is an unconnected piped output stream, they may
 be connected by either the call:
 
or the call:src.connect(snk)
The two calls have the same effect.snk.connect(src)
snk - the piped input stream to connect to.IOException - if an I/O error occurs.public void write(int b)
           throws IOException
byte to the piped output stream.
 
 Implements the write method of OutputStream.
write in class OutputStreamb - the byte to be written.IOException - if the pipe is  broken,
          unconnected,
          closed, or if an I/O error occurs.public void write(byte[] b,
                  int off,
                  int len)
           throws IOException
len bytes from the specified byte array
 starting at offset off to this piped output stream.
 This method blocks until all the bytes are written to the output
 stream.write in class OutputStreamb - the data.off - the start offset in the data.len - the number of bytes to write.IOException - if the pipe is  broken,
          unconnected,
          closed, or if an I/O error occurs.public void flush()
           throws IOException
flush in interface Flushableflush in class OutputStreamIOException - if an I/O error occurs.public void close()
           throws IOException
close in interface Closeableclose in interface AutoCloseableclose in class OutputStreamIOException - 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.