永发信息网

socket TCP协议接收大文件时recv的buffer设置多少合适

答案:2  悬赏:0  手机版
解决时间 2021-03-17 17:58
  • 提问者网友:练爱
  • 2021-03-17 11:15
socket TCP协议接收大文件时recv的buffer设置多少合适
最佳答案
  • 五星知识达人网友:玩家
  • 2021-03-17 11:46
一般64k足矣。tcp有流量控制,不会出现缓冲区溢出的问题
全部回答
  • 1楼网友:醉吻情书
  • 2021-03-17 12:31
代码如下: char buf[4096];        // or whatever std::deque data; for (int res ; ; ) {     res = recv(fd, buf, sizeof buf, msg_dontwait);     if (res == -1)     {         if (errno == eagain || errno == ewouldblock)         {             break;  // done reading         }         else         {             // error, break, die         }     }     if (res == 0)     {         // socket closed, finalise, break     }     else     {         data.insert(data.end(), buf, buf + res);     } }
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯