- java.lang.Object
-
- java.io.OutputStream
-
- java.io.PipedOutputStream
-
- 实现的所有接口
-
Closeable,Flushable,AutoCloseable
public class PipedOutputStream extends OutputStream
管道输出流可以连接到管道输入流以创建通信管道。 管道输出流是管道的发送端。 通常,数据由一个线程写入PipedOutputStream对象,并且由其他线程从连接的PipedInputStream读取数据。 建议不要尝试使用单个线程中的两个对象,因为它可能使线程死锁。 如果从连接的管道输入流读取数据字节的线程不再存在, 则称该管道为broken 。- 从以下版本开始:
- 1.0
- 另请参见:
-
PipedInputStream
-
-
构造方法摘要
构造方法 构造器 描述 PipedOutputStream()创建尚未连接到管道输入流的管道输出流。PipedOutputStream(PipedInputStream snk)创建连接到指定管道输入流的管道输出流。
-
方法摘要
所有方法 实例方法 具体的方法 变量和类型 方法 描述 voidclose()关闭此管道输出流并释放与此流关联的所有系统资源。voidconnect(PipedInputStream snk)将此管道输出流连接到接收器。voidflush()刷新此输出流并强制写出任何缓冲的输出字节。voidwrite(byte[] b, int off, int len)将从偏移off开始的指定字节数组中的len字节写入此管道输出流。voidwrite(int b)将指定的byte写入管道输出流。-
声明方法的类 java.io.OutputStream
nullOutputStream, write
-
-
-
-
构造方法详细信息
-
PipedOutputStream
public PipedOutputStream(PipedInputStream snk) throws IOException
创建连接到指定管道输入流的管道输出流。 写入此流的数据字节将作为输入从snk。- 参数
-
snk- 要连接的管道输入流。 - 异常
-
IOException- 如果发生I / O错误。
-
PipedOutputStream
public PipedOutputStream()
创建尚未连接到管道输入流的管道输出流。 在使用之前,它必须由接收器或发送器连接到管道输入流。
-
-
方法详细信息
-
connect
public void connect(PipedInputStream snk) throws IOException
将此管道输出流连接到接收器。 如果此对象已连接到某个其他管道输入流,则抛出IOException。如果
snk是未连接的管道输入流,而src是未连接的管道输出流,则可以通过以下呼叫连接它们:
或者电话:src.connect(snk)
这两个调用具有相同的效果。snk.connect(src)
- 参数
-
snk- 要连接的管道输入流。 - 异常
-
IOException- 如果发生I / O错误。
-
write
public void write(int b) throws IOException将指定的byte写入管道输出流。实现
write的方法OutputStream。- Specified by:
-
write,类OutputStream - 参数
-
b-byte。 - 异常
-
IOException- 如果管道为 broken,unconnected, 已关闭,或者发生I / O错误。
-
write
public void write(byte[] b, int off, int len) throws IOException将从偏移off开始的指定字节数组中的len字节写入此管道输出流。 此方法将阻塞,直到所有字节都写入输出流。- 重写:
-
write类OutputStream - 参数
-
b- 数据。 -
off- 数据中的起始偏移量。 -
len- 要写入的字节数。 - 异常
-
IOException- 如果管道为 broken,unconnected, 已关闭,或者发生I / O错误。
-
flush
public void flush() throws IOException刷新此输出流并强制写出任何缓冲的输出字节。 这将通知任何读者字节在管道中等待。- Specified by:
-
flush,界面Flushable - 重写:
-
flush类OutputStream - 异常
-
IOException- 如果发生I / O错误。
-
close
public void close() throws IOException关闭此管道输出流并释放与此流关联的所有系统资源。 此流可能不再用于写入字节。- Specified by:
-
close,界面AutoCloseable - Specified by:
-
close,界面Closeable - 重写:
-
close类OutputStream - 异常
-
IOException- 如果发生I / O错误。
-
-