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

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

...全文
18 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
);

18,356

社区成员

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

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