位置:首頁 > Java技術 > Java.io包 > Java.io.PipedInputStream類

Java.io.PipedInputStream類

Java.io.PipedInputStream類是一個管道輸入流,可以連接到一個管道輸出流,管道輸入流提供的所有數據字節寫入管道輸出流。以下是有關PipedInputStream的要點:

  • 該管道輸入流包含一個緩衝區,解耦讀操作和寫操作限製之內。

  • 不推薦試圖從單個線程使用這兩個對象,因為它可能會死鎖的線程。

  • 管道,如果被提供的數據字節連接的管道輸出流線程不再處於活動狀態被打破。

類聲明

以下是java.io.PipedInputStream類的聲明:

public class PipedInputStream
  extends InputStream

字段

以下是java.io.PipedInputStream類中的字段:

  • protected byte[] buffer -- 一個循環緩衝區在其中輸入數據被放置。

  • protected int in -- 在循環緩衝區的數據的下一個字節從連接的管道輸出流中接收時將存儲的位置的索引。

  • protected int out -- 在循環緩衝區的位置,在該數據的下一個字節將通過這個管道輸入流中讀取的索引。

  • protected static int PIPE_SIZE -- 管道的循環輸入緩衝區的默認大小。

類構造函數

S.N. 構造函數 & 描述
1 PipedInputStream() 
這創建了一個管道輸入流,以便它尚未連接。
2 PipedInputStream(int pipeSize) 
這創建了一個管道輸入流,以便它尚未連接,並使用指定的管道大小為管道緩衝區。
3 PipedInputStream(PipedOutputStream src) 
這將創建一個管道輸入流,使其連接到管道輸出流src中。
4 PipedInputStream(PipedOutputStream src, int pipeSize) 
這創建了一個管道輸入流,以便它被連接到管道輸出流src和使用指定的管道尺寸為管道緩衝區。

類方法

S.N. 方法 & 描述
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