问答详情
源自:3-5 使用多线程实现多客户端的通信

如何去除socket的半关闭状态

在代码Client.java中我看到您用了socket.shutdownOutPut()使得客服端进入了半关闭状态,那如果要进行第二轮回通信,被关闭的输出流怎么打开?求大神指点

提问者:qq_仔阳_0 2015-10-31 14:57

个回答

  • 迈克尔阿智
    2015-12-18 16:20:12

    如果客户端 shutdownOutput(),那就说明客户端只是纯监听服务器端的socket,这样当然服务器端因为超时断开,客户端也就只是断开而已,不会有异常。

    如果不加入,那客户端继续会维持连接去服务器端,这样如果服务器超时断开,客户端就无法继续连到服务器,也就有异常出现了。我也出现过,记得是 java.net.SocketException: Connection reset