如何处理连接重置错误?

时间:2017-12-07 17:05:14

标签: java sockets

当我在不关闭套接字的情况下突然关闭客户端。服务器将首先循环一些,然后抛出连接重置异常。为什么服务器首先循环而不是中间抛出异常? 如何处理客户端断开连接而不关闭套接字的情况? 以下是服务器的listenClient方法:

private void listenClientMessage() throws IOException {
            String line = null;
            while (true) {
                try{
                    line = in.readLine();
                }
                catch(IOException e){
                    System.out.println("Client disconect abruptly");
                    throw new IOException();
                }
                if (line.startsWith("\\")) {
                    if (processClientRequest(line)) {
                        break;
                    }
                }
                else {
                    broadcast(clientName + ": " + line);
                }
            }
        }

0 个答案:

没有答案