如果该类有SerializableAttribute
并且其对象已使用BinaryFormatter
序列化,则序列化大小等于它在内存中占用的大小?
编辑:其他问题:有没有更好的方法来查找对象在内存中占用多少空间?这种方法足够近似吗?
答案 0 :(得分:2)
没有。类/结构的成员用填充存储在存储器中,以在需要时将它们对齐在偶数字边界上(根据相应的数据类型)。序列化数据没有这样的填充。
答案 1 :(得分:1)
通常,序列化对象占用更多空间,因为还必须存储显式元数据。但是,在运行过程的内存空间中也有元数据,那么如何计算元数据部分以进行正确的比较呢?