管道流实现线程间的通信(文字)
/*作用
* 管道流的主要作用就是可以进行两个线程间的通信。一个线程作为管道输出流,另一个线程作为管道输入流,
* 在启动线程前,只需要将这两个线程的管道流连接到一起就可以。
* 这要就很方便的实现了两个线程间的通信。
*
* */
1. 一个管道输出流,作为信息提供者; PipedOutputStream pos = new PipedOutputStream();
2. 一个管道输入流,作为信息接受者 PipedInputStream pis = new PipedInputStream();
3. 将两个管道流连接起来,这两个都可以将管道流连接起来,二者可选其一即可 pos.connect(pis);
//pis.connect(pos);
4. 创建线程1 :thread-1 并将输入流传入,相当于线程1接入了管道,可以向管道中传入数据;
5. 创建线程2 :thread-2 并将输出流传入,相当于线程2接入了管道,可以从管道读取数据;
6. 线程.start(); 开启线程,实现线程间通信(这个是单向的,如果要双向通信,需要在两个线程间再建立一条管道)
管道流实现线程间的通信(图片)