Qt用Tcp/ip通讯时,缓冲区只有8K,怎么样才能设置更大 100

Qt用Tcp/ip通讯时,缓冲区只有8K,怎么样才能设置更大?比如我要发送一个160K数据的文件,不分包怎么弄。... Qt用Tcp/ip通讯时,缓冲区只有8K,怎么样才能设置更大?比如我要发送一个160K数据的文件,不分包怎么弄。 展开
 我来答
ljf10000
2013-10-08 · TA获得超过199个赞
知道小有建树答主
回答量:125
采纳率:0%
帮助的人:110万
展开全部
1。设置发送缓冲
int send_len = 16 * 1024;
if( setsockopt( fd, SOL_SOCKET, SO_SNDBUF, (void
*)&send_len, sizeof(send_len) ) < 0 ){

return -1;
}

2. 发送160K数据
如果是使用tcp,则无需关注分片和大小,顺序发即可;比如每次发送一个字节,或者每次发送1K都可以。
如果是使用udp,必须分包,需在接收端自行缓冲+合并
追问
Qt中能用这个函数么?
追答
只要是C语言就可以
Storm代理
2023-07-25 广告
StormProxies是一家国内优质海外HTTP代理商,拥有一个庞大的IP资源池,覆盖200多个地区,IP数量大且匿名度高。其优点还包括超高并发、稳定高效、技术服务等特点,同时提供HTTP、HTTPS以及SOCKS5协议支持。此外,Sto... 点击进入详情页
本回答由Storm代理提供
hssbig
2013-10-09
知道答主
回答量:3
采纳率:0%
帮助的人:4231
展开全部
用QTcpSocket不就很好吗?tcp协议是安全可靠的通讯协议,你一次发多少都可以,QT底层会处理
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式