目录

Java.io - PipedInputStream

介绍 (Introduction)

Java.io.PipedInputStream类是一个管道输入流,可以连接到管道输出流,管道输入流然后提供写入管道输出流的任何数据字节。以下是关于PipedInputStream的重点 -

  • 管道输入流包含缓冲区,在一定限度内将读操作与写操作解耦。

  • 建议不要尝试使用单个线程中的两个对象,因为它可能使线程死锁。

  • 如果向连接的管道输出流提供数据字节的线程不再存在,则称管道被破坏。

类声明

以下是Java.io.PipedInputStream类的声明 -

public class PipedInputStream
   extends InputStream

字段 (Field)

以下是Java.io.PipedInputStream类的字段 -

  • protected byte[] buffer - 这是传入数据的循环缓冲区。

  • protected int in - 这是循环缓冲区中位置的索引,当从连接的管道输出流接收数据时,将存储下一个数据字节。

  • protected int out - 这是循环缓冲区中位置的索引,此管道输入流将读取下一个数据字节。

  • protected static int PIPE_SIZE - 这是管道循环输入缓冲区的默认大小。

类构造函数

Sr.No. 构造函数和描述
1

PipedInputStream()

这将创建一个PipedInputStream,以便它尚未连接。

2

PipedInputStream(int pipeSize)

这将创建一个PipedInputStream,以便它尚未连接并使用指定的管道大小作为管道缓冲区。

3

PipedInputStream(PipedOutputStream src)

这将创建一个PipedInputStream,以便它连接到管道输出流src

4

PipedInputStream(PipedOutputStream src, int pipeSize)

这将创建一个PipedInputStream,以便它连接到管道输出流src并使用指定的管道大小作为管道缓冲区。

类方法

Sr.No. 方法和描述
1 int available()

此方法返回可以在不阻塞的情况下从此输入流中读取的字节数。

2 void close()

此方法关闭此管道输入流并释放与该流关联的所有系统资源。

3 void connect(PipedOutputStream src)

此方法使此管道输入流连接到管道输出流src

4 int read()

此方法从此管道输入流中读取下一个数据字节。

5 int read(byte [] b,int off,int len)

此方法从此管道输入流中读取最多len个字节的数据到一个字节数组。

6 protected void receive(int b)

该方法接收一个字节的数据。

方法继承

该类继承以下类中的方法 -

  • Java.io.InputStream
  • Java.io.Object
↑回到顶部↑
WIKI教程 @2018