Socket()不返回

whslovexyp 2016-11-30 04:04:47
在某些情况下,调用完这个函数后,不返回任何值,卡在这里。在什么状况下,会卡在这里呢?高分求救。
...全文
272 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
whslovexyp 2016-12-09
  • 打赏
  • 举报
回复
和当前连接状态无关,结贴走人。
whslovexyp 2016-12-01
  • 打赏
  • 举报
回复
头疼了,等我做个程序消耗下内存
pengzhixi 2016-12-01
  • 打赏
  • 举报
回复
即使内存不足,在linux下也是返回一个错误。看了下windows的这个函数的描述似乎没有对这种情况进行说明
pengzhixi 2016-12-01
  • 打赏
  • 举报
回复
引用 6 楼 whslovexyp 的回复:
自己顶下,怎么消耗TCP/IP层的memory呢?
需要分配接受和发送缓冲区
whslovexyp 2016-12-01
  • 打赏
  • 举报
回复
自己顶下,怎么消耗TCP/IP层的memory呢?
赵4老师 2016-12-01
  • 打赏
  • 举报
回复
建议先学会使用netstat命令查看当前所有连接状态。
whslovexyp 2016-11-30
  • 打赏
  • 举报
回复
Win socket() wait can happen for 2 reasons which is due to an unusual behavior, as mentioned below: 1. Client gets disconnected from server due to network issues. 2. Memory buffer(stack) overflow in TCP/IP layer; which further requires the socket to be reset.
pengzhixi 2016-11-30
  • 打赏
  • 举报
回复
如果不是包装函数 那就不应该出现不返回的情况。这个函数做的事情不多,只是构造一个文件对象,分配一个描述符,然后把文件对象和描述符绑定起来。最后返回这个描述符。所以不应该有不返回的情况出现。即使说系统对进程的描述符个数做了限制达到了最大的个数也会返回错误。
whslovexyp 2016-11-30
  • 打赏
  • 举报
回复
纯c/c++调用
whslovexyp 2016-11-30
  • 打赏
  • 举报
回复
补充说明,不是所谓的同步异步的问题,纯粹这个函数不返回,freeze在这里。
pengzhixi 2016-11-30
  • 打赏
  • 举报
回复
你这个是系统调用还是经过包装的函数呢

64,637

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

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