java socket长时不操作的问题

fmpoffice 发布于 2014/04/22 23:25
阅读 274
收藏 1
java socket中,我链接上之后,长时间不发包不作其他操作,为什么会掉线,而且sever端没有任何报错的提示。也没有执行下线操作。请问是什么问题呢?
加载中
0
0
马太航
马太航

很多因素了,你必须自己写心跳包做确认。

0
jobell
jobell

引用来自“马太航”的评论

很多因素了,你必须自己写心跳包做确认。

+1
0
Mrchenyz
Mrchenyz
周期检测
0
fmpoffice
fmpoffice

引用来自“马太航”的评论

很多因素了,你必须自己写心跳包做确认。

谢谢各位大大,弄懂了。心跳包,就是发送垃圾封包,我打算这样设计。有用户登录之后,服务端给这个用户开一条线程,每六十秒发一个垃圾包,然后客户端接受这个垃圾包再回复一个垃圾包,当服务端发送一次的时候,int count 自动加一,当接受一次垃圾包的时候,就自动减一。但count大于3,表示3分钟发包都没回复,证明客户端离线了,那就执行下一步离线操作。大哥,我这样设计可行吗?
fmpoffice
fmpoffice
回复 @cgf986916 : 请问大哥,我应该查找哪方面的资料呢?
JPer
JPer
每次查看最后通信时间不就行了吗?超阀值不就是没有回应、掉线了吗;
返回顶部
顶部