我正在实现一个服务器使用Java ServerSocket并有两个客户端连接,每个来自不同的线程。一个向服务器发送消息,另一个从服务器读取消息。他们都在同一端口上联系服务器,所以我如何区分想要阅读的客户端和想要写入的客户端?Java的serversocket如何写入和读取到不同的线程
ServerSocket ss = new ServerSocket(port);
while (true) {
Socket cs = ss.accept();
BufferedReader r = new BufferedReader(new InputStreamReader(cs.getInputStream()));
String message = r.readLine();
System.out.println("message");
DataOutputStream os = new DataOutputStream(cs.getOutputStream());
String send = "send";
os.writeBytes(send);
}
最后writeBytes导致自认为相连,以便将消息发送到服务器已经关闭了连接的客户端的问题。同样,希望从服务器接收客户是不会对套接字的输入流提交任何
@ user1190650:换句话说 - 你必须指定和实施特定应用协议... – home 2012-02-18 18:56:43
感谢您的帮助! – user1190650 2012-02-19 03:32:33