【发布时间】:2011-10-25 16:07:07
【问题描述】:
我正在使用 Protobuf.NET 序列化大量类,其中大部分作为引用(因为我的数据结构中有多个对相同类的引用)。
所有序列化的类都通过使用 ImplicitFirends.AllFields 进行序列化,以确保 一切都被倾倒了。
在我当前的测试用例中,我有 53 个文件,总和为 500MB。
当我使用 Protobuf.NET 反序列化器读取此数据时,我的私有字节/常驻内存会飙升至 9GB 并停留在那里(即,这不是在反序列化后释放/GC 的临时内存)。
另一个奇怪的事情是,如果我重写(重新序列化)所有数据,它仍然保持相同的大小。
这个 x20 在内存中爆炸有意义吗?
【问题讨论】:
标签: c# .net protobuf-net