CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
IBM Rational 系统开发最佳实践工具包 WebSphere MQ 最佳实践 TOP 15
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  网络编程

请问如何保持客户端和服务器的连接

楼主allenhiman(9Ft)2006-03-03 14:39:57 在 VC/MFC / 网络编程 提问

情况时这样的:  
  用vc6.0的那个CSoket类作了一个服务器程序(tcp协议),和一个客户端程序  
  客户端连接服务器后一切运行正常,可是如果长时间挂着客户端的话(不和服务器交互)  
  就会失去连接,这要怎样解决啊,有没有办法设定cs的持续连接时间?  
  我查到的一点资料大概是这样解释的  
  服务器会纪录客户端最后一次成功通信的时间,如果长时间没有成功通信的话,服务器会自动断开客户端的连接  
  解决办法大体这样:客户端定时给服务器发送有效消息  
  我现在是想,有没有办法设置某个参数来延长持续连接时间,以免发送额外的消息?  
  望解答之  
  谢谢~~~  
  问题点数:50、回复次数:5Top

1 楼cpio(备注)回复于 2006-03-03 15:12:22 得分 0

没做过这方便的  
   
  你看CSocket::m_nTimeOut是不是干这个用的  
  Top

2 楼allenhiman(9Ft)回复于 2006-03-03 16:08:28 得分 0

应该不是吧,这个参数我没用过  
  感谢你Top

3 楼citywolf()回复于 2006-03-03 16:19:28 得分 40

我现在是想,有没有办法设置某个参数来延长持续连接时间,以免发送额外的消息?  
  这个问题是没有办法的!!  
   
  解决办法:  
  采用心跳协议:client定时(比如1分钟)向server发送KeepAlive消息(KeepAlive消息自己定义),server如果超过一定时间没有收到client发过来的KeepAlive消息(比如5分钟),则认为client已经断掉,server这时可以断开与client的连接。Top

4 楼oyljerry(【勇敢的心】→ ㊣提拉米苏√㊣)回复于 2006-03-03 22:03:54 得分 10

beatheart   包Top

5 楼sdf123321()回复于 2006-03-07 12:43:34 得分 0

服务器程序是你自己做的,只要你服务器和客户端不主动断开连接,除非网络原因,是不会断线的。Top

相关问题

  • 客户端连接oracle服务器!!
  • 客户端不能连接服务器
  • MMORPG的TCP/IP网络连接是服务器端和客户端时刻保持网络连接吗?
  • 客户端程序如何与服务器是否一直保持着长时间的socket连接呢?
  • 客户端程序如何与服务器是否一直保持着长时间的socket连接呢?
  • CAsyncSocket 客户端如何连接服务器 以及 如何判断客户端已经连接上服务器?
  • 客户端用DCOMConnect连接应用服务器时,客户端是否要注册该应用服务器?
  • 客户端通过代理连接到服务器?请问服务器怎么得到客户机的名字
  • 客户机能Ping通服务器,但是客户机的网上邻居打不开服务器。客户机用SqlServer能连接服务器...
  • 如何用DCOM连接客户服务器程序?

关键词

  • 服务器
  • 客户
  • 连接
  • 消息
  • 解决
  • client
  • server
  • 客户端
  • 断开
  • keepalive

得分解答快速导航

  • 帖主:allenhiman
  • citywolf
  • oyljerry

相关链接

  • Visual C++类图书
  • Visual C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo