Почему BinaryFormatter.Serialize запускает так много мусора? - PullRequest
0 голосов
/ 24 февраля 2020

Довольно простое использование BinaryFormatter для сериализации объекта [Serializable] в файл. Это вызывает много много распределений и вызовов G C. Почему? Все объекты уже находятся в памяти, нужно записать их в файл, почему он создает столько мусора в памяти? Как это работает точно?

BinaryFormatter formatter = new BinaryFormatter();
formatter.Binder = new VersionDeserializationBinder();
formatter.Serialize(stream, data);

Я бы понял, почему десериализация должна была бы делать это, но сериализацию не так много.

...