Утечка памяти в дополнительных типах XmlSerializer
Я разрабатываю какое-то приложение, которое вызывает много конструктора XmlSerializer с параметром extraTypes. Я обнаружил, что каждый вызов увеличивает память приложения примерно на 100 КБ и 2 дескриптора (иногда больше). Пример кода:
этот код увеличивает память приложения на 100 КБ и 2 обработчика на каждый вызов
while (true)
{
Console.ReadLine();
new XmlSerializer(typeof (object), new Type[] {});
}
этот код увеличивает память приложения для обработчиков 43024KB и 2004
for (var i = 0; i < 1000; i++)
{
new XmlSerializer(typeof (object), new Type[] {});
}
Итак, просто самый простой пример консольного приложения:
internal class Program
{
private static void Main(string[] args)
{
//this code encrease application memory for 43024KB and 2004 handlers
for (var i = 0; i < 1000; i++)
{
new XmlSerializer(typeof (object), new Type[] {});
}
Console.WriteLine("Finished. Press any key to continue...");
Console.ReadLine();
}
}
Это ошибка в XmlSerializer или я делаю что-то не так?
Постскриптум то же самое с оптимизацией кода и сборкой релиза