首页 > 解决方案 > protobuf:将分隔消息序列化为编码流在 8192 字节后失败

问题描述

我正在尝试将使用此函数分隔的一系列消息写入google::protobuf::util指向本地文件系统上文件的编码流。message.SerializeWithCachedSizes()在成功将 8192 字节的分隔消息成功写入流后,调用似乎失败了。

我的用例几乎与这位询问有关如何将消息写入文件的问题的用户相同。

据我所知,协议缓冲区文档没有说明将数据写入超过 8192 字节的编码流的特殊处理,所以我认为这应该可以工作。这是预期的行为吗?其他人是否成功使用了此功能而没有问题?

我也尝试过使用 Ostream 和 ZeroCopyFileStream 以及相同的行为。

标签: protocol-buffers

解决方案


推荐阅读