请问如何在客户已经满了的监听socket中显式拒绝以下的socket新链接请求?

sproll 2004-10-02 04:41:03
各位大虾,小弟使用socket API时遇到一个问题,我写的一个服务socket可以接收5个客户socket的链接,我发现如果客户链接超过5个,当第6个客户的链接请求激发了服务socket的accept消息时(我使用的是WSAAsyncSelect选择的非阻塞式socket),如果不处理这个accept请求,后续的客户socket再也不能激发服务socket的accept消息,就算已经链接的客户全部关闭,后续的客户也不能再激发服务socket的accept消息,
请问是否要在客户数量满了以后,在accept消息中明确拒绝后续的链接请求,才可以保证链接的客户socket关闭以后,后续的socket还能继续链接服务socket?
...全文
67 7 打赏 收藏 举报
写回复
7 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
sproll 2004-10-03
不管白猫黑猫,能抓老鼠的就是好猫……
这个问题已经搞了偶很久了,多亏你的启发偶才搞定它。
  • 打赏
  • 举报
回复
super852 2004-10-02
不客气。我只是笨方法,估计各位高手还会有更好的办法的。呵呵。
我编程序用的多数都是笨方法。呵呵。
  • 打赏
  • 举报
回复
sproll 2004-10-02
血血super852(头太晕) ,解决了!
深鞠躬!
  • 打赏
  • 举报
回复
myblind 2004-10-02
用一个队列。
  • 打赏
  • 举报
回复
longj 2004-10-02
应该是super852(头太晕) 的做法,先接受,再发一条信息给客户端,说满了,再关
  • 打赏
  • 举报
回复
super852 2004-10-02
我是VC菜鸟,我说一种笨方法,不要直接拒绝,先接受连接,检测当前连接,如果是6个,或6个以上,就主动关闭。这样能不能达到你要求呢?我以前就用过这种笨招儿。
  • 打赏
  • 举报
回复
mjfhigh 2004-10-02
用临时的变量存储,然后要用的时候在用
  • 打赏
  • 举报
回复
发帖
网络编程

1.8w+

社区成员

VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
帖子事件
创建了帖子
2004-10-02 04:41
社区公告
暂无公告