当前位置: 代码迷 >> J2SE >> Java TCP,该如何解决
  详细解决方案

Java TCP,该如何解决

热度:478   发布时间:2016-04-23 22:30:03.0
Java TCP
如何在客户端判断服务器端已经关闭,这样客户端不再向服务器端发送东西,要不然会报错
Java TCP/IP 服务器

------解决方案--------------------
我之前用java的Serversocket(就利用TCP)做过一个上传下载的程序,如果你服务端关了,客户端会自动报错java.net.SocketException: Connection reset,如果你继续向服务端发东西就会报
java.net.SocketException: Connection reset by peer: socket write error。

或者你可以这样做,可以在服务端关闭前做一个广播告诉所有在线客户端,服务端即将关闭让所有客户端断开连接,当客户端收到广播后再发送一个消息回服务端确认收到命令,就断开与服务端的连接,服务端确认收到所有客户端回应后就关闭,如果没有收到所有客户端回应就再一次进行广播,当收到所有回应后就可以关闭了!
------解决方案--------------------
双方互传心跳,一段时间没有收到心跳就表示对方已经关闭
  相关解决方案