awesome-repositories.com
المدونة
awesome-repositories.com

اكتشف أفضل مستودعات المصادر المفتوحة باستخدام بحث مدعوم بالذكاء الاصطناعي.

استكشفعمليات بحث منسقةبدائل مفتوحة المصدربرمجيات ذاتية الاستضافةالمدونةخريطة الموقع
المشروعحولكيفية ترتيب النتائجالصحافةخادم MCP
قانونيالخصوصيةالشروط
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
Cysharp avatar

Cysharp/MemoryPack

0
View on GitHub↗
4,598 نجوم·305 تفرعات·C#·MIT·3 مشاهدات

MemoryPack

MemoryPack is a high-performance binary serialization library for C# and Unity. It provides a zero-allocation data pipeline and a schema-evolution framework designed to minimize memory allocations and encoding overhead.

The project utilizes compile-time source generators to avoid runtime reflection and implements a zero-encoding binary format for maximum throughput. It distinguishes itself through a zero-allocation approach that reuses object instances to reduce garbage collection pressure and copies the memory layout of unmanaged structs directly to binary streams.

The library covers binary schema versioning for backward compatibility and supports asynchronous collection streaming for large datasets. It includes a TypeScript type generator to synchronize data structures between C# and TypeScript for cross-language data exchange. Additional capabilities include payload compression, custom formatter implementations, and serialization callbacks.

Features

  • High-Performance Binary Serialization - Provides an optimized binary serialization engine for C# designed for minimal CPU and memory overhead.
  • Direct-Memory Struct Copying - Implements high-speed serialization by copying the memory layout of blittable structs directly to the output stream.
  • Schema Versioning - Ensures backward compatibility by tracking member additions and handling schema mismatches between data versions.
  • Schema Evolution - Supports adding new members to serialized objects while maintaining compatibility with older data versions.
  • Binary Serialization Versioning - Ensures that new software versions can read older binary data through robust schema versioning.
  • Blittable Struct Serializations - Writes the memory layout of unmanaged structs directly to binary streams for maximum processing speed.
  • Memory Optimization Techniques - Reduces GC pressure through object reuse and direct raw struct serialization in C#.
  • Zero-Allocation Binary IO - Implements a memory-efficient binary IO pipeline that minimizes allocations during serialization and deserialization.
  • Serialization Code Generators - Utilizes compile-time source generators to create static serialization logic and eliminate runtime reflection overhead.
  • Object Serialization - Provides high-performance conversion of plain C# objects into a binary format and back.
  • Object Instance Reuses - Provides the ability to deserialize data into existing object instances to minimize memory allocations and GC frequency.
  • Buffer-Reusing Serializers - Minimizes garbage collection pressure by reusing existing object instances during the deserialization process.
  • Zero-Encoding Binary Formats - Writes data directly to binary streams without intermediate transformation to achieve maximum processing throughput.
  • Custom Serializer Implementations - Allows the definition of manual serialization logic for external types by implementing custom formatter classes.
  • TypeScript Type Generators - Generates TypeScript interfaces from C# type definitions to maintain consistent data models.
  • C# to TypeScript Generators - Provides a utility to convert C# types into TypeScript interfaces for consistent cross-language data exchange.
  • Payload Compressions - Reduces binary size using compression algorithms to minimize the volume of data transmitted across the network.
  • Cross-Language Data Exchange - Synchronizes data structures between C# and TypeScript to ensure type-safe API communication.
  • Collection Streaming - Processes massive object arrays using asynchronous streams to prevent high memory consumption.
  • Unity Serialization Libraries - Optimizes Unity game state persistence by using fast binary serialization for reduced load times.
  • Serialization Libraries - Zero-copy binary serialization for .NET.

سجل النجوم

مخطط تاريخ النجوم لـ cysharp/memorypackمخطط تاريخ النجوم لـ cysharp/memorypack

بحث بالذكاء الاصطناعي

استكشف المزيد من المستودعات الرائعة

صف ما تحتاجه بلغة بسيطة — وسيقوم الذكاء الاصطناعي بترتيب آلاف المشاريع مفتوحة المصدر المنسقة حسب الصلة.

Start searching with AI

بدائل مفتوحة المصدر لـ MemoryPack

مشاريع مفتوحة المصدر مشابهة، مرتبة حسب عدد الميزات المشتركة مع MemoryPack.
  • apache/foryالصورة الرمزية لـ apache

    apache/fory

    4,234عرض على GitHub↗

    Fory is a cross-language serialization framework and binary data serializer designed to convert complex object graphs into a compact binary format for high-performance data exchange. It includes an IDL-based schema compiler to transform interface definition language files into type-safe native data models and a schema evolution manager to maintain forward and backward compatibility. The project features a zero-copy data access layer that allows reading specific fields from binary rows without deserializing the entire object. It supports dual-mode serialization, enabling a toggle between a por

    Javacompressioncppcross-language
    عرض على GitHub↗4,234
  • msgspec/msgspecالصورة الرمزية لـ msgspec

    msgspec/msgspec

    3,821عرض على GitHub↗

    msgspec is a high-performance data modeling, serialization, and schema validation toolkit for Python. It serves as a type-safe serialization framework that integrates schema enforcement and data parsing into a single pass, functioning as both a data serialization library and a schema validation system based on standard Python type annotations. The project distinguishes itself through high-performance structural primitives, including compilation-based routine generation and zero-copy buffer parsing. It optimizes memory usage via garbage collection-aware layouts and reduces processing overhead

    Pythondeserializationjsonjson-schema
    عرض على GitHub↗3,821
  • alipay/furyالصورة الرمزية لـ alipay

    alipay/fury

    4,412عرض على GitHub↗

    Fury is a multi-language binary serialization framework designed for encoding domain objects and complex graphs to facilitate cross-language data exchange. It includes an interface definition language compiler that translates schema definitions into idiomatic native types and serialization boilerplate across multiple languages. The project distinguishes itself through a zero-copy binary reader that allows specific fields to be accessed without deserializing the entire object, as well as an object graph serializer that preserves circular references and referential integrity. It also features a

    Java
    عرض على GitHub↗4,412
  • neuecc/messagepack-csharpالصورة الرمزية لـ neuecc

    neuecc/MessagePack-CSharp

    6,710عرض على GitHub↗

    MessagePack-CSharp is a high-performance binary serialization library for .NET applications that converts object graphs into the MessagePack format. It functions as a C# data serialization toolkit and a polymorphic binary encoder capable of handling abstract classes and interfaces using union keys to identify concrete derived types. The library provides a binary format transcoder to transform binary data into human-readable JSON for debugging. It supports ahead-of-time formatter generation to avoid runtime overhead and implements LZ4 binary compression to reduce the size of serialized data.

    C#
    عرض على GitHub↗6,710
عرض جميع البدائل الـ 30 لـ MemoryPack→

الأسئلة الشائعة

ما هي وظيفة cysharp/memorypack؟

MemoryPack is a high-performance binary serialization library for C# and Unity. It provides a zero-allocation data pipeline and a schema-evolution framework designed to minimize memory allocations and encoding overhead.

ما هي الميزات الرئيسية لـ cysharp/memorypack؟

الميزات الرئيسية لـ cysharp/memorypack هي: High-Performance Binary Serialization, Direct-Memory Struct Copying, Schema Versioning, Schema Evolution, Binary Serialization Versioning, Blittable Struct Serializations, Memory Optimization Techniques, Zero-Allocation Binary IO.

ما هي البدائل مفتوحة المصدر لـ cysharp/memorypack؟

تشمل البدائل مفتوحة المصدر لـ cysharp/memorypack: apache/fory — Fory is a cross-language serialization framework and binary data serializer designed to convert complex object graphs… msgspec/msgspec — msgspec is a high-performance data modeling, serialization, and schema validation toolkit for Python. It serves as a… alipay/fury — Fury is a multi-language binary serialization framework designed for encoding domain objects and complex graphs to… neuecc/messagepack-csharp — MessagePack-CSharp is a high-performance binary serialization library for .NET applications that converts object… messagepack-csharp/messagepack-csharp — MessagePack-CSharp is a high-performance binary serializer for .NET that converts C# objects to and from the compact… gogo/protobuf — This project is a Protocol Buffers Go compiler and code generation framework that translates schema definitions into…