flush 和 printwriter 的问题
Problems with flush and printwriter
我有以下代码:
while (true) {
in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
out = new PrintWriter(socket.getOutputStream());
String result = null;
while (result != "string") {
out.println("string one");
out.flush();
String var = null;
if ((var = in.readLine()) != null) {
var2 = function(login);
out.println(var2);
out.flush();
}
}
}
刷新工作不正常,主要是外部 while 循环的第一次迭代将打印两个输出,但之后出现奇怪的延迟,一切都搞砸了("string one" 没有打印到输出)。
我做错了什么?
您正在使用 !=
来比较 String 引用,它不会按照您的想法行事,但这无关紧要,因为您永远不会更改。
很可能你在另一端有一个错误,这就是为什么 readLine()
阻止等待一些文本。
我有以下代码:
while (true) {
in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
out = new PrintWriter(socket.getOutputStream());
String result = null;
while (result != "string") {
out.println("string one");
out.flush();
String var = null;
if ((var = in.readLine()) != null) {
var2 = function(login);
out.println(var2);
out.flush();
}
}
}
刷新工作不正常,主要是外部 while 循环的第一次迭代将打印两个输出,但之后出现奇怪的延迟,一切都搞砸了("string one" 没有打印到输出)。
我做错了什么?
您正在使用 !=
来比较 String 引用,它不会按照您的想法行事,但这无关紧要,因为您永远不会更改。
很可能你在另一端有一个错误,这就是为什么 readLine()
阻止等待一些文本。