黑马程序员技术交流社区

标题: 管道流的作用 [打印本页]

作者: 漪顿    时间: 2013-8-13 17:13
标题: 管道流的作用
刚刚学了一下毕老师讲的管道流,知道是io和多线程相结合的,我想问管道流在实际开发当中的用处,用到的频率高吗,
作者: mf152    时间: 2013-8-28 01:00
java为“管道”提供了PipedInputStream和PipedOutputStream类。将这两者结合在一起,它们允许一个Java组件输出数据到输出流,而另一个组件将这个输出流当作输入流来读取。

  举个例子可以说明,比如一个用来记录应用程序日志信息的组件和一个用来显示流数据动态报表的组件。通过给日志记录组件提供PipedOutputStream,给报表组件提供相应的PipedInputStream,这两个组件就不用知道对方的情况而可以相互通信。


作者: 黑马-文鸿利    时间: 2013-8-28 08:53

  Java I/O系统是建立在数据流概念之上的,而在UNIX/Linux中有一个类似的概念,就是管道,它具有将一个程序的输出当作另一个程序的输入的能力。在Java中,可以使用管道流进行线程之间的通信,输入流和输出流必须相连接,这样的通信有别于一般的Shared Data通信,其不需要一个共享的数据空间。
作者: 楞个里格朗    时间: 2013-8-28 11:16
看到这个功能就知道频率高了,在网络编程基本都用到IO流,毕老师之前是通过来先读再存入一个缓冲区StringBuffered,然后再读取,再输出而现在通过多线程管道流调用connect可以简化步骤。很好的方法。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2