社区
网络编程
帖子详情
CSocket(服务端)中如何超时处理?!
smile2008
2004-10-20 11:14:05
使用的是CSocket的消息处理机制,阻塞,多线程,每个socket连接起一个线程。想采用定时器,但是无法识别超时的socket对象,希望大家讨论启发
...全文
252
12
打赏
收藏
CSocket(服务端)中如何超时处理?!
使用的是CSocket的消息处理机制,阻塞,多线程,每个socket连接起一个线程。想采用定时器,但是无法识别超时的socket对象,希望大家讨论启发
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
12 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
月吻长河
2004-10-20
打赏
举报
回复
CSocket本身是阻塞的,对超时的响应很滞后。
gdy119
2004-10-20
打赏
举报
回复
每当server accept()一个socket,对该socket设置:
int rcvtime=1000;(1秒)
setsockopt(socket,SOL_S0CKET,SO_SNDTIMEO,(char *)&rcvtime,sizeof(rcvtime));//send
setsockopt(socket,SOL_S0CKET,SO_RCVTIMEO,(char *)&rcvtime,sizeof(rcvtime));//recv
不知道这样可行不?
smile2008
2004-10-20
打赏
举报
回复
当下真的是没有什么好的解决办法
DentistryDoctor
2004-10-20
打赏
举报
回复
SO_SNDTIMEO/SO_RECVTIMEO设置超时,如果超时,send/recv会有错误代码返回的。
try876
2004-10-20
打赏
举报
回复
超时:发一个请示,如果在超时时间内(比如说10秒)没有任何返回信息,就是超时
DentistryDoctor
2004-10-20
打赏
举报
回复
既然用线程了,为何还要用定时器?
smile2008
2004-10-20
打赏
举报
回复
现在是不是对发言次数不做限制了?
smile2008
2004-10-20
打赏
举报
回复
都是短连结
qq_13939330
2004-10-20
打赏
举报
回复
这种我用过,在QQ的四国大战程序中.
客户端每隔一定时间向服务器发送在线标志,如果服务器在一定时间检查到此客户端套接字标志为不在线的话,则作出断线处理!
smile2008
2004-10-20
打赏
举报
回复
不是这样的我对线程数进行了限制,我的发言数够了,希望谁能直切要害
yzhgr
2004-10-20
打赏
举报
回复
服务器段采用多线程的话是不是有局限性呢?如果同时有10000个客户端连接,程序就创建10000个线程,有着10000个线程不知道这样的话运行着是不是会出问题!
smile2008
2004-10-20
打赏
举报
回复
有问题就有解决办法,我现在把socket对象存入了一个数组,但是问题在于我不知道哪个对象是超时的。谁有成功的案例可以提供一下。另外,在做客户程序的时候我使用了select进行了超时处理,比较成功,CSocket的服务端却打住了
MFC:
Socket
编程—TCP
服务端
和多个客户端通信 示例代码
https://blog.csdn.net/qq_29542611/article/details/86371353 MFC:
Socket
编程—TCP
服务端
和多个客户端通信 示例代码
基于C
Socket
的多人聊天室(服务和客户端分开)
基于C
Socket
的多人聊天室,服务-客户端分开的,
服务端
用简单的单链表穿起来。
MFC的TCP套接字
服务端
程序代码
MFC的TCP套接字
服务端
程序代码
MFC网络编程(
服务端
和客户端的通讯)
这个是
服务端
和客户端进行聊天的工具 ,里面有
服务端
可以有很多的客户端,相当于局域网聊天
tcp.rar_tcp
有连接的TCP通信程序代码,包括
服务端
和客户端2部分
网络编程
18,357
社区成员
64,187
社区内容
发帖
与我相关
我的任务
网络编程
VC/MFC 网络编程
复制链接
扫一扫
分享
社区描述
VC/MFC 网络编程
c++
c语言
开发语言
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章