关于WSASend的问题

herofyf 2005-08-16 07:03:44
我新建了一个socket并用setsocketop设置了SO_SNDBUF的大小为4096,
其中有用WSAEventSelect对这个socket的操作!
最后当我用WSASend发送了一个8096 的buffer时,我只调用了一次就能将这么大的缓冲一次能发送出去,我一开始以为要用WSASend两次呢!为什么一次就能发送完呢?谢谢
...全文
138 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
DentistryDoctor 2005-08-17
  • 打赏
  • 举报
回复
详见WIndows网络编程p214
DentistryDoctor 2005-08-17
  • 打赏
  • 举报
回复
SO_SNDBUF是指缓冲区大小。如果大于SO_SNDBUF,那应该是直接发出去了,而没有缓存的过程.
lifengice0706 2005-08-17
  • 打赏
  • 举报
回复
你可以用sniffer抓一下包,问题就明白了。和上面的兄弟说的差不多。
dirdirdir3 2005-08-16
  • 打赏
  • 举报
回复
SO_SNDBUF这个只是发送缓存的大小,WSASend的时候的数据可能另外有地方放的.

18,363

社区成员

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

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