java.lang.Objectjava.io.OutputStream
java.io.PipedOutputStream
public class PipedOutputStream
可以将管道输出流连接到管道输入流来创建通信管道。管道输出流是管道的发送端。通常,数据由某个线程写入 PipedOutputStream 对象,并由其他线程从连接的 PipedInputStream 读取。不建议对这两个对象尝试使用单个线程,因为这样可能会造成该线程死锁。如果某个线程正从连接的管道输入流中读取数据字节,但该线程不再处于活动状态,则该管道被视为处于 毁坏 状态。
PipedInputStream
| 构造方法摘要 | |
|---|---|
PipedOutputStream() 创建尚未连接到管道输入流的管道输出流。 |
|
PipedOutputStream(PipedInputStream snk) 创建连接到指定管道输入流的管道输出流。 |
|
| 方法摘要 | |
|---|---|
void |
close() 关闭此管道输出流并释放与此流有关的所有系统资源。 |
void |
connect(PipedInputStream snk) 将此管道输出流连接到接收者。 |
void |
flush() 刷新此输出流并强制写出所有缓冲的输出字节。 |
void |
write(byte[] b, int off, int len) 将 len 字节从初始偏移量为 off 的指定 byte 数组写入该管道输出流。 |
void |
write(int b) 将指定 byte 写入传送的输出流。 |
| 从类 java.io.OutputStream 继承的方法 |
|---|
write |
| 从类 java.lang.Object 继承的方法 |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| 构造方法详细信息 |
|---|
public PipedOutputStream(PipedInputStream snk) throws IOException
snk 的输入。
snk - 要连接的管道输入流。
IOException - 如果发生 I/O 错误。
public PipedOutputStream()
| 方法详细信息 |
|---|
public void connect(PipedInputStream snk) throws IOException
IOException。
如果 snk 是未连接的管道输入流,而 src 是未连接的管道输出流,则可以通过以下调用之一连接它们:
或:src.connect(snk)
这两个调用的效果相同。snk.connect(src)
snk - 要连接的管道输入流。
IOException - 如果发生 I/O 错误。
public void write(int b)
throws IOException
byte 写入传送的输出流。
实现 OutputStream 的 write 方法。
OutputStream 中的
write
b - 要写入的
byte。
IOException - 如果管道处于
毁坏或
未连接状态,或者发生 I/O 错误。
public void write(byte[] b,
int off,
int len)
throws IOException
len 字节从初始偏移量为
off 的指定 byte 数组写入该管道输出流。在将所有字节写入输出流之前,此方法一直处于阻塞状态。
OutputStream 中的
write
b - 数据。
off - 数据中的初始偏移量。
len - 要写入的字节数。
IOException - 如果管道处于
毁坏或
未连接状态,或者发生 I/O 错误。
public void flush()
throws IOException
Flushable 中的
flush
OutputStream 中的
flush
IOException - 如果发生 I/O 错误。
public void close()
throws IOException
Closeable 中的
close
OutputStream 中的
close
IOException - 如果发生 I/O 错误。