PipedOutputStream&PipedInputStream---管道流
Posted 北方丶有佳人
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PipedOutputStream&PipedInputStream---管道流相关的知识,希望对你有一定的参考价值。
管道流通常与多线程技术相结合
import java.io.IOException; import java.io.PipedInputStream; import java.io.PipedOutputStream; public class PipedStreamDemo { public static void main(String[] args) throws IOException { //管道流和多线程技术相结合 PipedInputStream pis =new PipedInputStream(); PipedOutputStream pos = new PipedOutputStream(); //将两个流连接上。 pis.connect(pos); new Thread(new Input(pis)).start(); new Thread(new Output(pos)).start(); } } //定义输入任务 class Input implements Runnable{ private PipedInputStream pis; public Input(PipedInputStream pis) { super(); this.pis = pis; } @Override public void run() { byte[] buf = new byte[1024]; int len; try { len = pis.read(buf); String str = new String(buf,0,len); System.out.println(str); pis.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } //定义输出任务 class Output implements Runnable{ PipedOutputStream pos; public Output(PipedOutputStream pos) { super(); this.pos = pos; } @Override public void run() { //通过写方法完成 try { pos.write("嘿,管道来了".getBytes()); pos.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }
以上是关于PipedOutputStream&PipedInputStream---管道流的主要内容,如果未能解决你的问题,请参考以下文章
PipedInputStream/PipedOutputStream原理
字节输入流/输出流-----PipedInputStream/PipedOutputStream
为啥没有更多的 Java 代码使用 PipedInputStream / PipedOutputStream?
JDK源码阅读之PipedInoutStream与PipedOutputStream