java.io.PipedOutputStream
PipedOutputStream is a class which places information on a communications
pipe. When two threads want to pass data back and forth, one creates a piped
output stream and the other creates a piped input stream.
Summary
Public Constructors
Public Methods
|
|
|
|
|
void |
close() |
|
|
|
|
|
void |
flush() |
|
|
|
|
|
void |
write(byte[] buffer) |
abstract |
|
|
|
|
void |
write(int oneByte) |
|
|
|
|
|
void |
write(byte[] buffer, int offset, int count) |
clone,
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
toString,
wait,
wait,
wait
Details
Public Constructors
public
PipedOutputStream()
Constructs a new unconnected PipedOutputStream. The resulting Stream must
be connected to a PipedInputStream before data may be written to it.
Constructs a new PipedOutputStream connected to the PipedInputStream
dest
. Any data written to this stream can be read from
the
dest
.
Parameters
dest
| the PipedInputStream to connect to. |
Public Methods
public
void
close()
Close this PipedOutputStream. Any data buffered in the corresponding
PipedInputStream can be read, then -1 will be returned to the reader. If
this OutputStream is not connected, this method does nothing.
Throws
IOException
| If an error occurs attempting to close this
PipedOutputStream.
|
Connects this PipedOutputStream to a PipedInputStream. Any data written
to this OutputStream becomes readable in the InputStream.
Parameters
stream
| the destination PipedInputStream. |
Throws
IOException
| If this Stream or the dest is already connected.
|
public
void
flush()
Notifies the readers on the PipedInputStream that bytes can be read. This
method does nothing if this Stream is not connected.
public
void
write(int oneByte)
Writes the specified byte
oneByte
to this
PipedOutputStream. Only the low order byte of
oneByte
is
written. The data can now be read from the destination PipedInputStream.
Separate threads should be used for the reader of the PipedInputStream
and the PipedOutputStream. There may be undesirable results if more than
one Thread interacts a input or output pipe.
Parameters
oneByte
| the byte to be written |
Throws
IOException
| If the receiving thread was terminated without closing the
pipe. This case is not currently handled correctly. |
InterruptedIOException
| If the pipe is full and the current thread is interrupted
waiting for space to write data. This case is not currently
handled correctly. |
NullPointerException
| If the receiver has not been connected yet.
|
public
void
write(byte[] buffer, int offset, int count)
Writes
count
bytes
from this byte array
buffer
starting at offset
index
to this
PipedOutputStream. The written data can now be read from the destination
PipedInputStream. Separate threads should be used for the reader of the
PipedInputStream and the PipedOutputStream. There may be undesirable
results if more than one Thread interacts a input or output pipe.
Parameters
buffer
| the buffer to be written |
offset
| offset in buffer to get bytes |
count
| number of bytes in buffer to write |
Throws
IOException
| If the receiving thread was terminated without closing the
pipe. This case is not currently handled correctly. |
InterruptedIOException
| If the pipe is full and the current thread is interrupted
waiting for space to write data. This case is not currently
handled correctly. |
NullPointerException
| If the receiver has not been connected yet. |
IllegalArgumentException
| If any of the arguments are out of bounds.
|