Сериализованная форма данных отличается от оперативной памяти; например, коллекция / словарь будет включать несколько объектов для элементов, массивов, хэш-блоков / индексов и т. д., но необработанные данные (при сериализации) будут обычно только данными - так что вы можете видеть меньше громкости при сериализации.
Точно так же, как BinaryFormatter
должны включать много (подробных) метаданных типа - но в объектах у него просто есть (краткий) дескриптор типа в дескрипторе объекта - так что вы можете увидеть more данные в сериализованных данных. Аналогично, сериализатору (если он не оптимизирован вручную) необходимо маркировать отдельные поля, но в памяти это подразумевается в смещении от адреса объекта.
Таким образом, вы можете получить номер от сериализации, но это не тот же номер .
Получить точное представление о размере графа объекта сложно. SOS может помочь; в противном случае, создайте целый сарай из них и разделите. Грубо, но это может сработать.