1 Repo
High-performance serialization that copies the raw memory layout of unmanaged structs directly to a binary stream.
Distinct from Schema-to-Struct Mappings: Candidates focus on struct packing or schema mapping, not the direct memory-copy (blitting) of unmanaged types for serialization.
Explore 1 awesome GitHub repository matching operating systems & systems programming · Blittable Struct Serializations. Refine with filters or upvote what's useful.
MemoryPack ist eine performante Binär-Serialisierungsbibliothek für C# und Unity. Sie bietet eine Zero-Allocation-Daten-Pipeline und ein Schema-Evolutions-Framework, das darauf ausgelegt ist, Speicherallokationen und Kodierungs-Overhead zu minimieren. Das Projekt nutzt Source-Generatoren zur Kompilierzeit, um Laufzeit-Reflektion zu vermeiden, und implementiert ein Zero-Encoding-Binärformat für maximalen Durchsatz. Es zeichnet sich durch einen Zero-Allocation-Ansatz aus, der Objektinstanzen wiederverwendet, um den Garbage-Collection-Druck zu reduzieren, und das Speicherlayout nicht verwalteter Structs direkt in Binär-Streams kopiert. Die Bibliothek deckt Binär-Schema-Versionierung für Abwärtskompatibilität ab und unterstützt asynchrones Collection-Streaming für große Datensätze. Sie enthält einen TypeScript-Typ-Generator zur Synchronisation von Datenstrukturen zwischen C# und TypeScript für den sprachübergreifenden Datenaustausch. Zusätzliche Funktionen umfassen Payload-Kompression, benutzerdefinierte Formatter-Implementierungen und Serialisierungs-Callbacks.
Writes the memory layout of unmanaged structs directly to binary streams for maximum processing speed.