winsock的10053错误的根源是什么?

fluke 2008-04-14 09:17:44
我的程序偶尔会有出现10053的情况,主要都是在send的时候。

我的sock都是在开始的时候调用了win的初始化,结束的时候才cleanup。

我程序的工作是持续的传输小文件到服务器,中间是有间断的,一点也不繁忙。

试过几次这样的情况:

开始持续传输的头一次或者两次传输,都是10053错误,之后就好了,几千个正常的传输。

还有一些情况是中间偶尔有一小段时间持续几次10053。

根据msdn的解释,这个是软件引起的传输失败,但是具体的是什么原因呢,有一度我怀疑是我的防火墙,因为传输exe文件都不成功,其他文件“一般都”成功。。。

隔了一天发现exe也能传了。。很奇怪的问题。

高手顺便讲讲10055之类的问题为什么会出现把,越详细越好,谢谢。
...全文
459 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
fluke 2008-04-20
  • 打赏
  • 举报
回复
我发现问题了。我的问题是这样的:

client先建立连接到server,通了。

server尝试创建新线程来处理这个socket,但是这个时候server发现自己的线程池满了,遂决定close掉这个socket。

于此同时,client发送了一段数据给server,成功了 --- 这是因为server这个时候还没close()--- 即FIN还没发出。

client这个时候再recv()。结果返回 -1 。

然后我在client调用WSALastError发现错误号是10053,说的是本地软件主动放弃连接。我就是被这个信息误导了,其实不是client主动放弃连接,而是server。

问题解决,结贴。送分。
fluke 2008-04-16
  • 打赏
  • 举报
回复
不知道是为什么放弃的,不过现在这样的情况不错,一般重试几次就好了。
iGoo 2008-04-15
  • 打赏
  • 举报
回复
您的主机中的软件放弃了一个已建立的连接。
fluke 2008-04-14
  • 打赏
  • 举报
回复
兄弟,在你的资源里面没有找到那个错误的解释啊,我去搜下吧。
薛勇 2008-04-14
  • 打赏
  • 举报
回复
去资源那里搜索一下,前几天刚下了一个sock编程中所有错误的解释。很有用的,

4,356

社区成员

发帖
与我相关
我的任务
社区描述
通信技术相关讨论
社区管理员
  • 网络通信
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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