当前位置: 技术问答>java相关
socket问题,当客户端关闭或者实际链路断开后服务器端怎么判断?
来源: 互联网 发布时间:2015-07-27
本文导语: socket问题,当客户端关闭或者实际链路断开后服务器端怎么判断? | 嘿嘿 意外断开是检测不出来的,只能用线程定时发送测试包,并setSoTimeout(int)来判断,超时就: catch(Exception e){ 帮主,...
socket问题,当客户端关闭或者实际链路断开后服务器端怎么判断?
|
嘿嘿
意外断开是检测不出来的,只能用线程定时发送测试包,并setSoTimeout(int)来判断,超时就:
catch(Exception e){
帮主,你掉线了!
}
意外断开是检测不出来的,只能用线程定时发送测试包,并setSoTimeout(int)来判断,超时就:
catch(Exception e){
帮主,你掉线了!
}
|
一般来说,客户端和服务器端一建立好连接之后,二者之间就必须以一定的时间间隔发送一种保持连接报文,这个报文由你自己定义,越简单越好。如果双方中的一方在规定的时间内没有收到对方的报文后,就认为对方已经关闭或链路断开。实际运用中都是这么做的,也称之为heatbeat。