【发布时间】:2016-07-11 20:28:43
【问题描述】:
我正在尝试解压缩一块内存,但我不知道它的原始未压缩大小,但是,我确实知道该原始内存块的最大大小。
有没有什么方法可以在不知道原始未压缩大小的情况下用LZ4解压?
短篇长篇: 我正在使用名为 Cereal 的第三方库将一堆变量序列化为字符串流。 Cereal 将使用“便携式二进制格式”将您的数据序列化为字符串流,这意味着字节序被保留,如果需要,甚至在反序列化期间转换为主机的字节序。 然后使用 LZ4 压缩字符串流并传输到远程机器进行解压缩和反序列化。
我的问题是 LZ4 将输出一个压缩数据的内存块和一个指定压缩数据大小的整数。要解压缩,您需要压缩后的大小和原始大小,我只是将压缩后的数据块发送到远程机器。
那么,有没有办法在不知道原始压缩大小的情况下使用 LZ4 解压缩数据块?本质上是“开始解压,当你用完数据时你就完成了”
【问题讨论】: