使用zlib时,可以处理deflate()inflate()的最小和最大输入缓冲区大小是多少?

最佳答案

最小缓冲区大小为0。关于最大缓冲区,请参见zlib FAQ


  zlib可以处理大于4 GB的数据吗?
  
  是。 inflate()deflate()将正确处理任何数量的数据。每次调用inflate()deflate()都限于输入和输出的最大值的块,这些块可以以编译器的“ unsigned int”类型存储,但是对块的数量没有限制。但是请注意,strm.total_instrm_total_out计数器可能限制为4 GB。这些计数器是为方便起见而提供的,inflate()deflate()在内部不使用。每次调用inflate()deflate()后,应用程序都可以轻松地设置自己的计数器,使其计数超过4 GB。

10-07 12:15