在JAVA的 SOCKET 中如何检测对方是否已关闭了SOCKET?(100分)

  • 主题发起人 主题发起人 呆非4
  • 开始时间 开始时间

呆非4

Unregistered / Unconfirmed
GUEST, unregistred user!
在JAVA的 SOCKET 中如何检测对方是否已关闭了SOCKET?
 
一般都是通过抛异常来判断了。
或许有更好的方式,可惜我一直没有找到。
 
不可能知道是对方主动关闭了Socket还是网络传输出了问题。
目前只能用read或write时候出exception得知连接断了
 
我不会JAVA,可不可以每隔段时间就发个是否还在的包。然后如果一段时间内没有回应的话,
就认为他断了?
 
在JDK。14中有判断。
 
这个似乎不用那么麻烦吧!
你可以在通讯协议里边加上一个断开命令,比如当对方发送"CLOSE"
你反馈"ESOLC"然后双方断开连接就可以,只要不是这种情况都认为
是网络出现问题!
 
楼上的方法, 如果是掉线了怎么办?
 
我现在是通过READ来看是否有异常来判断的。
 
后退
顶部