zstd.net.multithread
0.1.0
dotnet add package zstd.net.multithread --version 0.1.0
NuGet\Install-Package zstd.net.multithread -Version 0.1.0
<PackageReference Include="zstd.net.multithread" Version="0.1.0" />
<PackageVersion Include="zstd.net.multithread" Version="0.1.0" />
<PackageReference Include="zstd.net.multithread" />
paket add zstd.net.multithread --version 0.1.0
#r "nuget: zstd.net.multithread, 0.1.0"
#:package zstd.net.multithread@0.1.0
#addin nuget:?package=zstd.net.multithread&version=0.1.0
#tool nuget:?package=zstd.net.multithread&version=0.1.0
zstd.net
dotnet wrapper for zstd using interop.
how
zstd has three header files: zstd.h, zstd_errors.h and zdict.h
I tanslated the first two header files into C# in an almost line-by-line manner. TODO: zdict.h is not translated yet.
Also the offical souce code gives some examples like streaming_compression.c and streaming_decompression.c, which are good references to implement the corresponding C# logic.
Quite easy.
multi-thread compression
The offical repo release contains only x86 and x64 DLL for windows, and the multi-thread compression is not enabled in these DLLs, so I build the native library files from source in MacOS, Linux and Windows.
arm32 are not supported yet
But it's quite easy to support, just add the .so/.dylib file to the correct folder inside native folder. NativeLibrary.SetDllImportResolver is used to search for the native lib file. See here for the path lookup logic.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- No dependencies.
-
net8.0
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 0.1.0 | 103 | 1/14/2026 |