gpt4 book ai didi

c++ - 刷新 boost::iostreams::zlib_compressor。如何获得 "sync flush"?

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:46:15 24 4
gpt4 key购买 nike

获得 "zlib sync flush" 需要一些魔法吗?使用 boost::iostreams::zlib_compressor 时?只是在过滤器上调用 flush,或者在包含它的 filtering_ostream 上调用 strict_sync 并不能完成这项工作(即我希望压缩器冲洗足够多,解压缩器可以恢复压缩器到目前为止消耗的所有字节,而无需关闭流)。

查看 header ,似乎定义了一些“刷新代码”(特别是 sync_flush),但我不清楚它们应该如何使用(记住我的压缩器刚刚添加到 filtering_ostream)。

最佳答案

事实证明,symmetric_filter 存在一个根本问题zlib_compressor 继承自 isn't itself flushable(这看起来相当一个疏忽)。

可能向 symmetric_filter 添加此类支持就像添加 flushable_tag 并公开现有的私有(private)刷新方法一样简单,但现在我可以接受它。

关于c++ - 刷新 boost::iostreams::zlib_compressor。如何获得 "sync flush"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2468792/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com