请问:编程时,怎样让服务器知道,申请了端口的客户端已经断开了连接,注意不是正常地Close()掉。如:客户端断电、死机?

strongerman 2003-04-23 09:35:04

请问:编程时,怎样让服务器知道,申请了端口的客户端已经断开了连接,注意不是正常

地Close()掉。如:客户端断电、死机?从而可以释放服务器的端口资源,让其他的连接使

用这个端口来连接服务器。
...全文
73 21 打赏 收藏 转发到动态 举报
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
barrylau 2003-04-26
  • 打赏
  • 举报
回复
发送Ping命令检测
weijiechen 2003-04-26
  • 打赏
  • 举报
回复
up
yins 2003-04-26
  • 打赏
  • 举报
回复
一方发个"你活着吗"到另一方,
另一方回一个"是的,还活着"就说时还连着,如果在规定的时间没有回来就说明对方死了,close掉就行了。当然,有任何数据回来都说明对方还活着。
loopyifly 2003-04-25
  • 打赏
  • 举报
回复
我觉得应该是客户端向服务器每隔一定时间发送检测连接包

当服务器在规定时间内没有收到客户端的检测包就认为是已经断开了
strongerman 2003-04-25
  • 打赏
  • 举报
回复
strongerman 2003-04-25
  • 打赏
  • 举报
回复
up
livelivelive 2003-04-25
  • 打赏
  • 举报
回复
最简单的是server定时发随机数x到client,client返回x+1即可
JeasonZhao 2003-04-25
  • 打赏
  • 举报
回复
呵呵,心跳检测包没有这么复杂,只要对方能够返回任何包都可以认为对方“活着”
strongerman 2003-04-25
  • 打赏
  • 举报
回复

好! loopyifly(深情咸鱼) 的方法最清晰,我也想起了有这样现成相应的办法

具体如下:
3、 测试包数据格式
在系统启动和无三字段信息传输一定时间后,电信方发送测试包,数据格式如下:
起始符 数据内容 结束符 校验码
### TEST $$$ XXX

4、测试应答包数据格式
使用单位报警指挥系统收到测试包后,要根据校验结果进行应答,向电信方发送测试应答数据包。测试应答包数据格式如下:
起始符 应答内容 结束符
### OK $$$
若接收到的数据与测试包校验码不相符,则发送如下信息表示传输失败:
起始符 应答内容 结束符
### BAD $$$

应该就是这样吧?!

strongerman 2003-04-24
  • 打赏
  • 举报
回复

请问:如果要 服务器端定时发送检测包 , 那(检测包大概的格式)是如何定义的呢?

数据结构 和 算法 大概是怎样的呢?
lichungen 2003-04-24
  • 打赏
  • 举报
回复
其实思路上面都提到了,我来总结一下
第一种就是定时的向客户端发送信号,如果发送成功则如果客户端处于连接状态
第二种是调用SETSOCKOPT()设定KEEPALIVE选项为TRUE, 并在注册表中设置KeepAliveTime KeepAliveInterval
shilong 2003-04-24
  • 打赏
  • 举报
回复
玩星际时,
我把网线拨掉后在倒计时未结束前再插上居然还可以连上来~
是怎样实现的?
还有,星际的主机退出后,游戏照样进行
又是怎么实现的?难道全都是点对点通讯的?
sosolife 2003-04-24
  • 打赏
  • 举报
回复
gz
strongerman 2003-04-24
  • 打赏
  • 举报
回复

up
northpointstar 2003-04-23
  • 打赏
  • 举报
回复
int xx=recv(...........);
if(xx==0)
{
closesocket(client);
}
yydyqy 2003-04-23
  • 打赏
  • 举报
回复
服务器端定时发送检测包
zzyx 2003-04-23
  • 打赏
  • 举报
回复
那个超时连接似乎不管用。
大概叫KEEPALIVE,
我以前做过,经常不灵。
还是定时检测心跳保险。
liugy 2003-04-23
  • 打赏
  • 举报
回复
服务器有个超时连接
shesh 2003-04-23
  • 打赏
  • 举报
回复
在连接的过程中,不断发心跳进行检测,由服务器端来检测.
wjl_2001 2003-04-23
  • 打赏
  • 举报
回复
定时查询:定时发送信息包(能正常发送就证明客户端未死) 或定时扫描(扫描客户端开的端口)
加载更多回复(1)

18,356

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧