📄 testpipedwriter.java
字号:
package apibook.c3.s8;import java.io.*;//测试PipedWriter和PipedReader类public class TestPipedWriter { public TestPipedWriter() { } public static void main(String[] args) { try { PipedWriter producer = new PipedWriter(); PipedReader consumer = new PipedReader(producer); //字符产生器 CharConsumer strconsumer = new CharConsumer(consumer); //字符输出器 CharProducer strproducer = new CharProducer(producer); strconsumer.start(); strproducer.start(); } catch (IOException e) { e.printStackTrace(); } }}class CharConsumer extends Thread { private Reader in; public CharConsumer(Reader i) { this.in = i; } public void run() { while (true) { try { int num = 10; char[] content = new char[num]; num = in.read(content, 0, num);//从管道中读取10字节数据 //输出数据内容 System.out.println("read from pipe: " + new String(content).substring(0, num)); } catch (IOException e) { e.printStackTrace(); } } }}class CharProducer extends Thread { private Writer out; public CharProducer(Writer o) { this.out = o; } public void run() { while (true) { try { String content = "string from stringproducer"; out.write(content);//向管道写入数据 out.flush();//刷新流 sleep(1000); //sleep1秒 } catch (IOException e) { e.printStackTrace(); } catch (InterruptedException e) { e.printStackTrace(); } } }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -