IO之管道流
管道流:
實現兩個線程之間的數據交互. PipedInputStream PipedOutputStream PipedReder
PipedWriter
中文API解釋:
PipedInputStream
public class PipedInputStreamextends InputStream管道輸入流應該連接到管道輸出流;管道輸入流提供要寫入管道輸出流的所有數據字節。通常,數據由某個線程從 PipedInputStream 對象讀取,并由其他線程將其寫入到相應的 PipedOutputStream。不建議對這兩個對象嘗試使用單個線程,因為這樣可能死鎖線程。管道輸入流包含一個緩沖區,可在緩沖區限定的范圍內將讀操作和寫操作分離開。如果向連接管道輸出流提供數據字節的線程不再存在,則認為該管道已損壞。
PipedOutputStream
public class PipedOutputStreamextends OutputStream可以將管道輸出流連接到管道輸入流來創建通信管道。管道輸出流是管道的發送端。通常,數據由某個線程寫入 PipedOutputStream 對象,并由其他線程從連接的 PipedInputStream 讀取。不建議對這兩個對象嘗試使用單個線程,因為這樣可能會造成該線程死鎖。如果某個線程正從連接的管道輸入流中讀取數據字節,但該線程不再處于活動狀態,則該管道被視為處于 毀壞 狀態。
練習代碼:
輸出(結果每次運行都不相同):
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
總結
- 上一篇: shell 字符串切割
- 下一篇: ACM 欧拉公式