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

前端之家收集整理的这篇文章主要介绍了c – 动态调整大小的boost :: asio :: buffer前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在读取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量的输入并将其存储在容器中?

解决方法

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

猜你在找的C&C++相关文章