socket通信,怎么判断客户端掉线!

gross1215 2004-06-11 09:34:50
我用socket通信写了一个C/S结构的聊天程序,现在遇到一个问题,就是怎么判断客户端掉线(包括他自己下线,网线断开,机器死机等现象)!
谢谢,调试完成马上给分
...全文
603 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
asharki 2004-07-01
  • 打赏
  • 举报
回复
服务器轮询是一个办法,但是客户端过多时,对服务器是有压力的,本人有做过类似的C/S系统。暂时没有很好的办法。
aiunong 2004-06-23
  • 打赏
  • 举报
回复
gz
skypeople 2004-06-14
  • 打赏
  • 举报
回复
这种问题,估计只有一个办法就是服务器端进行轮询;
insert2003 2004-06-11
  • 打赏
  • 举报
回复
老问题了

定时发送一数据于服务端(Trimer)
如果服务收到则表示能连上
如果未收到则表示断开
gross1215 2004-06-11
  • 打赏
  • 举报
回复
关键是客户端掉线(包括他自己下线,网线断开,机器死机等现象)后怎么向服务器端发送信息啊,能不能给点代码什么的?
谢谢
laneywang 2004-06-11
  • 打赏
  • 举报
回复
onError,ondisconnect有些时候反映不是很对。特别是客户端是用其他语言开发的时候。
aushqh 2004-06-11
  • 打赏
  • 举报
回复
总的做法如下:
自己下线:调用disconnect事件;
网线断开,机器死机等现象:调用ONERROR事件就可以了。
当然你要把系统做得很大的话,就要做得更复杂点。
laneywang 2004-06-11
  • 打赏
  • 举报
回复
采用定时握手协议!就可以判断出来

1,593

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 网络通信/分布式开发
社区管理员
  • 网络通信/分布式开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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