Довольно простое использование BinaryFormatter для сериализации объекта [Serializable] в файл. Это вызывает много много распределений и вызовов G C. Почему? Все объекты уже находятся в памяти, нужно записать их в файл, почему он создает столько мусора в памяти? Как это работает точно?
BinaryFormatter formatter = new BinaryFormatter();
formatter.Binder = new VersionDeserializationBinder();
formatter.Serialize(stream, data);
Я бы понял, почему десериализация должна была бы делать это, но сериализацию не так много.