我有一个聊天室,在控制台中运行。服务器通过线程使用支持多个客户端。当我运行它时,服务器然后是客户端,客户端连接正常。我通过客户端程序发送消息“hello”,客户端打印出消息,表明服务器收到消息(这是服务器本意要做的)。但是当我同时运行另一个客户端时,我在一个客户端上发送了一条消息,但该消息没有打印在另一个客户端上。为什么会这样?没有错误,客户端连接正常。
问候 Bl-H
我会根据要求发布代码。
好的,这是服务器向客户端发送消息的代码(这是线程类的方法):
public void run() {
PrintStream output = null;
BufferedReader input = null;
String message;
try {
//i/o for clients:
output = new PrintStream(server.getOutputStream());
input = new BufferedReader(new InputStreamReader(server.getInputStream()));
} catch (IOException ioe) {
System.err.println(ioe);
System.exit(1);
}
while(true) {
try {
message = input.readLine();
output.println(message);
} catch (IOException ioe) {
System.err.println(ioe);
System.exit(1);
}
}
}