关于超时的问题。请高手指点

leinpu 2003-10-21 09:09:21
写了一个小程序。客户端程序于服务器端程序建立了连接,然后客户端向服务器端发了一个请求数据的命令,开始等待服务器端返回数据。但由于特殊的要求,服务器端会延迟很久才返回数据。那么这种情况下,客户端程序会超时中止连接呢还是会一直等下去。
如果我希望客户端程序一直等下去,该如何设置。

...全文
22 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
lostgdi731 2003-11-05
  • 打赏
  • 举报
回复
是的,用CSocket派生出来你的类就行了!
但你这样的程序不好,因为你同时也要设置超时的,如果你的服务当掉,难道客户端就一直这样等吗?
还是回到筐架设计层面来好。
studyingpersons 2003-10-21
  • 打赏
  • 举报
回复
对于阻塞的套接字来说,发送数据后立刻Select(),判断一定时间后是否可读就行了!!!
wilehorse 2003-10-21
  • 打赏
  • 举报
回复
如果是堵塞(默认)状态的话,会一直等下去,但是很占系统资源,非堵塞的话可以设置超时
,用select(),看看《WINDOWS SOCKETS规范及应用-WINDOWS网络编程接口.DOC》
LuckFox 2003-10-21
  • 打赏
  • 举报
回复
用CSocket派生出来你的类就行了!
mfc168 2003-10-21
  • 打赏
  • 举报
回复
ioctlsocket设置阻塞状态,客户端程序一直listen,不会超时中止
超时设置:int setsockopt(
SOCKET s,
int level,
int optname,
const char FAR *optval,
int optlen
);
我们从小的教育就是如何拆分问题、解决问题,这样做显然会使复杂的问题变得更容易些。但是这带来一个新问题,我们丧失了如何从宏观角度看问题,分析问题,解决问题,对更大的整体的内在领悟能力。这导致了我们对现有问题提出的解决方案,但无法预计实施该方案后产生的各种后果,为此我们付出了巨大代价。而我们试图考虑大局的时候,总要在脑子里重新排序,组合哪些拆分出来问题,给它们编组列单。习惯性认为解决了所有微观领域的问题,那么宏观上问题就得到了解决。然而,这种做法是徒劳无益的,就好比试图通过重新拼起来的碎镜子来观察真实的影像。所以在一段时间后,我们便干脆完全放弃了对整体的关注。当今的社会,几乎所有的企业情况都是岗位职责清晰,分工明确,员工是企业机器上的一颗螺丝钉,我们在招聘下属的时候也仅仅是用他的一技之长。项目一旦立项,我们就根据项目需求针对性性的招聘,短短半年团队就会膨胀数倍,但效率并不是成正比增长。另一个问题是这个庞大的团队合作起来并不尽人意。结果是 80% 协调的时间,20% 实际工作时间。 课程设置: 多维度架构之监控多维度架构之日志多维度架构之超时时间多维度架构之网络延迟多维度架构之DevOps多维度架构之容器 

18,356

社区成员

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

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