编程时,一段时间之后函数调用失败,你的动态库或应用程序一定有时间限制!~

来源:互联网 发布:益普索 知乎 编辑:程序博客网 时间:2024/05/16 07:33

2009年12月03日一天,一直在折腾一件事情,因为socket通信时,一段时间之后,send发送数据总是返回10053错误,弄得非常惨!~关键是初学socket通信,内部逻辑不是很了解~

问题大概是这样的:服务器端接收来自客户端A和客户端B的消息,当客户端B向服务器发送某一特定消息(Msg1)时,服务器就主动向客户端A回传消息Msg2,可客户端B第一次发送Msg1时,服务器正常处理!大约1分钟后,Msg1可以发送,但服务器无法回传Msg2,socket::send返回10053错,试了N次,我改了改我的Socket Server封装DLL、Socket Client封装DLL,改了改我的Win32客户端服务、Win32服务器端服务,截至到下午17:30还没有结论,,,就这样一天!~

2009年12月04日一早,我又开始研究这个问题,由于是早上脑子还是比较清醒一些,又试了好几遍,发现:大于63秒就不成,我也不可能使用63秒,那就可以确定是60秒惹的是非,经逐一哲里排查,锁定是我的Win32服务器端服务,Receive函数,使用了60参数传入Socket Server DLL中,一会我看看到底是何原因?呵呵,,,

原创粉丝点击