io完成端口关闭socket的问题!

jslfj34892 2012-12-08 03:20:52
我调用PostQueuedCompletionStatus来关闭一个socket连接
之后会进到GetQueuedCompletionStatus中,GetQueuedCompletionStatus中我closesocket关闭socket,之后delete参数的内存,
但是调用closesocket后又会进到GetQueuedCompletionStatus中,这时候参数是有值的 但是值的内容全是错误的, 应为第一次我closesocket之后释放了所有参数申请的内存.
怎么解决这个重入?
...全文
215 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
qb695514483 2013-07-12
  • 打赏
  • 举报
回复
对啊!我在测试的时候发现,当我closesocket之后并没有激活GetQueuedCompletionStatus()。同求解惑!
jslfj34892 2012-12-10
  • 打赏
  • 举报
回复
引用 3 楼 tiger9991 的回复:
楼主你这是死循环。closesocket别放GetQueuedCompletionStatus里面看看
是不是调用closesocket 就一定会进到GetQueuedCompletionStatus中?
youngwolf 2012-12-10
  • 打赏
  • 举报
回复
PostQueuedCompletionStatus只是给你一个执行closesocket的机会,真正的释放操作放在closesocket之后的回调之中。
傻X 2012-12-10
  • 打赏
  • 举报
回复
楼主你这是死循环。closesocket别放GetQueuedCompletionStatus里面看看

18,356

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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