L'article http://blogs.msdn.com/tess/archive/2006/02/15/532804.aspx de Tess Ferrandez explique pourquoi l'utilisation de XMLSerialization peut provoquer des fuites de mémoire.Y a-t-il encore des fuites de mémoire connues avec XMLSerialization dans .Net 3.5?
La fuite est le résultat de la manière dont les objets sont instanciés dans la mémoire en tant qu'assemblages, et non en tant qu'objets, qui ne sont donc pas ciblés par le récupérateur de place.
L'article a été écrit à l'origine sur le CLR 1.0/1.1, mais les mises à jour ne sont pas claires sur le 2.0 CLR. J'utilise intensivement XMLSerialization/Deserialization dans une application Web encore en version bêta pour les échanges UI/serveur. Les objets sont juste des DTO (objets avec seulement des propriétés).
Merci d'avance!
La méthode dynamique ne résout pas le problème des assemblys déchargés d'un AppDomain. Il crée uniquement des méthodes collectables. – JaredPar
Pour autant que j'ai compris dans l'article, ils disent encore que vous pourriez avoir des fuites de mémoire si vous utilisez l'un des constructeurs "spéciaux". – csgero
Le lien est cassé pour moi. –