当前位置:  开发笔记 > 编程语言 > 正文

动态调整大小的boost :: asio :: buffer

如何解决《动态调整大小的boost::asio::buffer》经验,为你挑选了1个好方法。

我读的boost::asio::ip::udp::socket是这样的:

using boost::asio::ip::udp;

// ...

char recv_buf[128];
udp::endpoint sender_endpoint;
size_t len = socket.receive_from(boost::asio::buffer(recv_buf), sender_endpoint);

现在,这完全正常,但我能够接收到的最大字符数现在是127.但是我遇到了一个问题,因为我需要接受一些数据输入,其长度可以大大改变(并且不是很好 - 带有前缀标题的定义长度,例如).对此的解决方案是动态扩展缓冲区,如向量.是否有可能创建一个动态扩展boost::asio::buffer以接受(理论上)infite量的输入并将其存储在容器中?



1> Cubbi..:

UDP数据报大小并没有太大变化:它永远不会大于65535,在8字节头之后留出65,527字节数据的空间.

推荐阅读
手机用户2502852037
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有