Я хотел бы сжать небольшой блок памяти (<= 16 КиБ), используя zlib.Вывод также сохраняется в блоке памяти.<em> Нет доступа к диску или базе данных здесь.
В соответствии с документацией, я должен повторно вызывать deflate()
, пока весь ввод не будет сдут.Между тем мне нужно увеличить размер блока памяти, куда направляется вывод.
Однако это кажется излишне сложным и, возможно, даже неэффективным.Поскольку я знаю размер ввода, я не могу заранее определить максимальный размер, необходимый для вывода, а затем сделать все одним вызовом deflate()
?
Если так, каков максимальный размер вывода?Я предполагаю что-то вроде: размер ввода + несколько байтов накладных расходов