我读的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字节数据的空间.