github_36883183 2016-11-30 13:42 采纳率: 0%
浏览 1027

管道/过滤器之管道阻塞,java语言/jre1.8.0

import java.io.IOException;
import java.io.PipedReader;
import java.io.PipedWriter;
import java.io.PrintWriter;
import java.util.Scanner;

public class Pipe {
//输入管道
private Scanner pipereader;
//输出管道
private PrintWriter pipewriter;
public Pipe(){
PipedWriter pw = new PipedWriter();
PipedReader pr = new PipedReader();
try{
pw.connect(pr);
} catch (IOException e){
e.getMessage();
}
pipewriter = new PrintWriter(pw);
pipereader = new Scanner(pr);
}
//读入一行数据到管道
//@return 读入的数据
public String readerLine() throws IOException{
if (pipereader.hasNextLine()) {
return pipereader.nextLine();
}
return null;
}
//从管道输出一行数据
public void writerLine(String strline) throws IOException{
pipewriter.println(strline);
}
//将读管道关闭,调用该方法后,不能再从管道中读数据
//如不能关闭则抛出异
public void closeReader() throws IOException{
pipereader.close();
}
//先刷新数据,在将写管道关闭,调用该方法后,不能向管道中写数据
//如不能关闭则抛出异常
public void closeWriter() throws IOException{
pipewriter.flush();
pipewriter.close();
}
}
上面是pipe管道,代码本身能通过编译,能实现对过滤器的连接。但是,一旦数据文本文件中超过165个单词,就会发生管道阻塞,请问哪里出了问题?

  • 写回答

1条回答 默认 最新

  • devmiao 2016-11-30 14:34
    关注
    评论

报告相同问题?

悬赏问题

  • ¥15 微信会员卡接入微信支付商户号收款
  • ¥15 如何获取烟草零售终端数据
  • ¥15 数学建模招标中位数问题
  • ¥15 phython路径名过长报错 不知道什么问题
  • ¥15 深度学习中模型转换该怎么实现
  • ¥15 HLs设计手写数字识别程序编译通不过
  • ¥15 Stata外部命令安装问题求帮助!
  • ¥15 从键盘随机输入A-H中的一串字符串,用七段数码管方法进行绘制。提交代码及运行截图。
  • ¥15 TYPCE母转母,插入认方向
  • ¥15 如何用python向钉钉机器人发送可以放大的图片?