socket send 问题

ostrich2fly 2007-09-10 08:26:02
int temp=send(p_Doc->m_ServeSocket_forClient,toSend,8026,0);
to send 是一个8026个字节的buffer
每次运行这行代码之后在客户端recv的时候,总是接收两次 第一次4380个字节,第二次发剩下的字节

请问怎么才能recv 一次把这个8026个字节接收完毕?
问题可能出在哪里?
着急中


谢谢
...全文
185 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
ostrich2fly 2007-09-10
  • 打赏
  • 举报
回复
怎么查看window?没有找到相关函数
谢谢

tcp必须要自己拼包。要么你换udp
自己拼包是什么意思?是说要加上TCP相关的头尾信息么?
谢谢

一次发送8000左右个字节应该没有什么问题吧?有文章说 最大可以支持8192个字节
MPTD_Fire 2007-09-10
  • 打赏
  • 举报
回复
如果TCP不行就换其他的了
都没什么代码,不知道什么问题。
taodm 2007-09-10
  • 打赏
  • 举报
回复
tcp必须要自己拼包。要么你换udp
yixiao386 2007-09-10
  • 打赏
  • 举报
回复
很大了哦
ouyh12345 2007-09-10
  • 打赏
  • 举报
回复
recv多少次并没关系。
看看socket的window是多大的,设了吗?
qld001 2007-09-10
  • 打赏
  • 举报
回复
MTU应该是65535字节吧

64,654

社区成员

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

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