[求助]vc单步调试正常,直接运行出错

Joycebingbing 2009-09-03 05:03:12
vc中socket数据接收与发送部分,单步调试正常,直接运行却出错,请问一般是什么原因引起的?(没用多线程)
不能单步调,只能输出信息跟踪,但输出信息显示的地方明显是不可能错的!
可能是哪些地方有内存溢出了,但是好大一个工程怎么去查是哪的错误呢??
这种情况应该怎么办呢??
快急死了,拜求各位牛人帮忙~谢谢!
--
...全文
465 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
icansaymyabc 2009-09-04
  • 打赏
  • 举报
回复
socket程序是与操作系统紧密相关的,它异步调用了各种系统资源。

你的问题我见得多了,实质上就是在socket的异步操作尚未得到应答之前你的单线程工作流已经把socket对象销毁了。单步调试之所以成功是因为你在每一个语句执行完后给了很大的停顿,使得socket对象在被销毁前有机会干完工作。

解决办法1:把你的源程序每个语句之后加一条 Sleep(5000),这样留出足够的时间给socket对象干活。

解决办法2:把你的程序改成多线程的或异步的,要确保socket对象完成了本职工作才能销毁它。
lzy0001sl 2009-09-03
  • 打赏
  • 举报
回复
错误信息时什么,socket程序单步调需要很大技巧的。

3,881

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 其它技术问题
社区管理员
  • 其它技术问题社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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