Ensuite je ferme cette form enfant , et le mémoire qu'elle a allouée ne se libère pas, je suppose que c'est parceque la MDIParent est toujours ouverte, mais est ce qu'il y a un moyen de libérer la mémoire quand même.
Car mon fond d'application doit tourner des jours avec des fermetures et ouvertures autant qu'on le souhaite hors la je sature vite en mémoire.
J'ai déjà essayer le GarbageCollector mais aucun effet ( je l'utilise peut être mal : GC.Collect( ) ).
Salut, comment vois tu que le mémoire n'est pas libérée ?
//pour fermer la form :
// Après cette méthode la forme n'est plus contenue dans la propriété MDIChildren.
myForm.Close( );
// Dans certains cas avec les formes MDI Dispose est plus éfficace que Close.
myForm.Dispose( );
// marque NULL, maintenant le GC peux ramasser la forme.
myForm = null;
// Force le passage du GC.
// GC.Collect( );
en fait, j'utilisait la librairie Systeme.data.odbc et je ne sais pas encore si cela venait de la librairire .net ou de la librairie odbc de la base de données que j'utilisais mais nous avions bcp de probleme de fuite de memoire virtuelle.
Aujourd'hui nous utilisons directement le pilote .net développé pour la base de données. et nous n'avons plus de problème.
En gros nosu avons utiliser memprofiler et CRL pour pister les fuites...
bjr,j'ai un code qu'il utilise un picturebox pour dessiner des lignes mais certains moment j'ai un problème de mémoire insuffisante.je recherche une solution pour ce problème et surtout dans l’instruction:myGraphics.DrawPath(myPen,myGraphicsPath).et merci