iErrorCode[FD_CLOSE_BIT]==10053 错误

文章详细解释了TCP连接中出现10053错误的原因及解决办法,包括如何处理客户端非法关闭连接导致的数据丢失问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

     else if(netEvents.iErrorCode[FD_CLOSE_BIT]==10053)//客户端非法关闭
      {
       ::WSACloseEvent(objtemp.sEvent);
       ptr->PeerShutDownSocket(objtemp.s);

      }

 

杭州-(__少(26062281) 14:11:47
 #先说说为什么会出现10053错误
    .这种情况通常是连接的一方客户端(服务器端),close连接后;连接的另一方服务器端(客户端)的socket发送缓冲区里边还有“未确认”的数据,导致服务器端的tcp协议栈会重新发送这些数据;然而客户端socket对方已经关闭了,并且丢弃了它的socket接受缓冲区的数据。导致服务器端的tcp协议栈向上层应用返回   10053错误。     如果你这个时候用wireshark抓一下包,应该会看到客户端可能会发送一个tcp   rst分段过来!怎么样解决close的时候数据丢失就是另外一个话题了

 
杭州-(__少(26062281) 14:11:50
 求解
杭州-浪子(81811368) 14:13:59
shutdown both 应该能解决
杭州-(__少(26062281) 14:14:27
在客户端
杭州-(__少(26062281) 14:14:40
closesocket的地方?
杭州-浪子(81811368) 14:14:39
忽略就行了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值