1 repositorio
Memory-efficient reading and writing of binary data that avoids intermediate buffering and allocations.
Distinguishing note: None of the candidates refer to low-level memory-efficient IO primitives like Span or Memory in the context of serialization.
Explore 1 awesome GitHub repository matching operating systems & systems programming · Zero-Allocation Binary IO. Refine with filters or upvote what's useful.
MemoryPack es una librería de serialización binaria de alto rendimiento para C# y Unity. Proporciona un pipeline de datos de cero asignaciones y un framework de evolución de esquemas diseñado para minimizar las asignaciones de memoria y la sobrecarga de codificación. El proyecto utiliza generadores de código fuente en tiempo de compilación para evitar la reflexión en tiempo de ejecución e implementa un formato binario de codificación cero para un rendimiento máximo. Se distingue por un enfoque de cero asignaciones que reutiliza instancias de objetos para reducir la presión del recolector de basura y copia el diseño de memoria de structs no gestionados directamente a flujos binarios. La librería cubre el versionado de esquemas binarios para compatibilidad hacia atrás y admite streaming de colecciones asíncronas para grandes datasets. Incluye un generador de tipos de TypeScript para sincronizar estructuras de datos entre C# y TypeScript para el intercambio de datos entre lenguajes. Las capacidades adicionales incluyen compresión de carga útil, implementaciones de formateadores personalizados y devoluciones de llamada de serialización.
Implements a memory-efficient binary IO pipeline that minimizes allocations during serialization and deserialization.