J'ai un peu le même problème dans une appli serveur qui génère des PDF par batch (une application "serveur PDF" qui récupere des infos en B2D, remplie un objet avec ses infos et le "passe" à une fonction de génération de fichier PDF).
La mémoire augmente perpetuellement et n'est jamais "relachée".
Lorsquelle est relachée, c'est seulement la mémoire vive. Le fichier d'échange reste toujours à sa valeur précédente et lorsque l'on relance un traitement, il continue de monter !
A terme, cela aboutit à un crash système d'allocation de ressource (soit crash windows mémoire swap, soit IDispenser:createRessource de dotNet).
Bref, le merdier si je puis me permettre l'expression
Un sacré sac de noeud, j'ai beau "GC.Collecté" dans tous les sens, impossible de m'en sortir.
Je commence à avoir de gros doute sur la capacité de grosse tenue en charge de programmes DOT.Net, tant les possibilité de libération de mémoire manuelles sont peu précises et peu nombreuses.
PS: je précise que j'ai bien vérifié que toutes mes connexions / readers B2D soient correctement fermés et détruits, et que même en supprimant la récupération d'infos en B2D et, encore plus fort, la génération effective du PDF, le problème est ralenti mais finit par apparaître !
Message édité par Sagoth le 01-03-2006 à 14:00:19