28 return boost::asio::buffer(&
_size,
sizeof(
_size));
33 boost::asio::mutable_buffer
buffer() {
#define DEBUG_ASSERT(predicate)
一块原始数据。 请注意,如果需要更多容量,则会分配一个新的内存块,并 删除旧的内存块。这意味着默认情况下,缓冲区只能增长。要释放内存,使用 clear 或 pop。
void reset(size_type size)
重置缓冲区的大小。如果容量不足,当前内存将被丢弃,并分配一个新的大小为 size的内存块。 allocated.
boost::asio::const_buffer buffer() const noexcept
从这个缓冲区创建一个boost::asio::buffer。
IncomingMessage(Buffer &&buffer)
构造函数,接收一个Buffer对象并将其移动赋值给内部_buffer。 这个构造函数用于初始化IncomingMessage对象,接收一个已经分配好的缓冲区。
auto pop()
弹出(移动)当前消息使用的Buffer对象。
boost::asio::mutable_buffer buffer()
返回一个boost::asio::mutable_buffer,指向消息数据的存储位置。
Buffer _buffer
存储消息数据的缓冲区。 这个Buffer对象用于存储实际的消息数据。
carla::streaming::detail::message_size_type _size
存储消息的大小(字节数)。
boost::asio::mutable_buffer size_as_buffer()
返回一个boost::asio::mutable_buffer,指向消息大小的存储位置。 这个函数用于在接收消息时,首先读取消息的大小(长度)。
auto size() const
返回消息的大小(长度)。
uint32_t message_size_type
消息大小的类型定义。