HELP:WinSock如果知道是哪个用户关闭了连接

drjojo 2006-11-17 10:32:58
RT
假设有2个ClinetA和B与Server连接上
当某个连接关闭时
请问Server怎么知道是A还是B关闭了连接?
谢谢
...全文
164 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
dananhai 2006-11-19
  • 打赏
  • 举报
回复
不太明白题目,除非是非正常关闭连接,否则任何一方都会收到对方的关闭连接请求。对于前者通过心跳检测之,对于后者不言自明。既然知道了处理时机,那Socket句柄与UserInfo的对应信息的取得是你自己需要处理的了。
daidongsheng 2006-11-19
  • 打赏
  • 举报
回复
书上都写着啊,看看书吧
drjojo 2006-11-18
  • 打赏
  • 举报
回复
niitlcj(游戏狂人)
如果有2个ClinetA和B与Server连接上了,server端在accept成功返回后, 会得到分别与A和B通信的socket标识符.
========================
假设accept返回的分别为sock_a,sock_b
怎么通过他们来判断那个客户端掉线
drjojo 2006-11-18
  • 打赏
  • 举报
回复
我的代码很简单
几乎照着Windows网络编程打的
nuaawenlin 2006-11-18
  • 打赏
  • 举报
回复
呵呵,那要看你使用什么类型的模型来管理socket了

参考Windows网络编程
niitlcj 2006-11-18
  • 打赏
  • 举报
回复
如果有2个ClinetA和B与Server连接上了,server端在accept成功返回后, 会得到分别与A和B通信的socket标识符.
niitlcj 2006-11-18
  • 打赏
  • 举报
回复
当客户端断线(closesocket)后,在服务器端recv时会返回SOCKET_ERROR的.此时可以知道是那个socket在recv的.楼主可否将测试代码发过来我看看呢.airtime@sohu.com
开源之心 2006-11-17
  • 打赏
  • 举报
回复
Server有个链表来保存客户端的信息,链表可以根据自己的需要建立。保存客户端的信息。每个客户端连接都有个id,可根据此ID判断是哪个客户端掉了线。

18,356

社区成员

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

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