私はLZ4ライブラリを使用しており、データを解凍するとき:
int LZ4_decompress_fast_continue (void* LZ4_streamDecode, const char* source, char* dest, int originalSize);
n最初にエンコードされたNバイトの最初のバイトのみが必要n < Nです。したがって、パフォーマンスを向上させるには、元のバッファーの一部のみを解凍するのが理にかなっています。
関数の引数にn代わりに渡すことができるのだろうか?NoriginalSize
私の最初のテストでは、それは不可能であることが示されました (誤って解凍されたデータを取得しました)。方法はあるかもしれませんが、たとえばnの倍数である場合はCHUNK_SIZE? すべての元のNバイトは、compress 関数の 1 回の呼び出しで圧縮されました。