美文网首页
Java使用管道流实现线程通信

Java使用管道流实现线程通信

作者: 黎繁介 | 来源:发表于2018-06-10 15:42 被阅读12次

            前两节我们讲的是让线程之间协调运行,之间没有实际上的通信,下面我们用管道流来实现两个线程之间的通信。管道流有:PipedInputStreamPipedOutputStream(管道字节流)、PipedWriterPipedReader(管道字符流)、Pipe.SinkChannelPipe.SourceChannel(新IO管道的Channel)。        

    使用规则:

            1.使用new操作符新建管道输入、输出流。

            2.使用管道输入流或管道输出流的connect方法将输入输出流连接起来。

            3.将输入、输出流传入各自线程。

            4.最终两个线程依赖对应的流来实现之间的通信。

    代码示范(以字符流为例,其它形式以与其一般):

    管道输出流线程 管道输入流线程 测试结果

            通常我们没不要去使用管道流是实现两个线程之间的通信,因为线程间是属于同一个进程的,他们共用同一个数据,能很好的实现数据交换。


    ---------------上一节“Java-线程的协调运行”--------------------

    ---------------下一节“Java-线程组”-----------------------------

    相关文章

      网友评论

          本文标题:Java使用管道流实现线程通信

          本文链接:https://www.haomeiwen.com/subject/nzrfeftx.html