Ca va exploser !!!!

cs_revlis Messages postés 41 Date d'inscription mardi 15 juillet 2003 Statut Membre Dernière intervention 7 décembre 2004 - 6 déc. 2004 à 19:13
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 - 7 déc. 2004 à 08:33
Bonjours,

Je suis en train de developper un outils de planning.
je me trouve face a un calendrier contenant plusieurs tache.

Chaque jours du calendrier est un userControls et chaque tache est représenté également par un unserControl.

lorsque je charge un jour, je vais chercher les taches de la journée dans une base.

Mais lorsque (pour mes tester), je fait joujou avec la selection des jours, où je passe d'un mois a un autre, je n'arrete pas de construire/detruire mes object userControlDay et userControlTache.

(je stock en mémoire les taches de la journée pour limiter les acces à la base et les rappel si je les ai déja chargé)
Mais si je charge les taches de toute l'année, la mémoire grimpe de manière astronomique (en 2 minute, on atteind facilement les 50Mo). (je vais faire quelques modif pour ne plus stocker les objets les plus anciennement stockés et optimiser la redondance de stockage)

Mais mon réél problème, c'est que lorsque je detruit mon userControl (fermer la WinForm (popup) dans laquelle il était par exemple)
Les objects qu'uil contient sont bien detruit (nombre d'objet diminue dans la liste des processus) mais la mémoire reste a 50Mo !!!!!

qu'est ce que je fait de mal ?... comment liberrer la mémoire ?...

Par avance merci

3 réponses

cs_yoannd Messages postés 305 Date d'inscription lundi 7 janvier 2002 Statut Membre Dernière intervention 10 août 2011 7
6 déc. 2004 à 19:44
Quel genre d'objets contiennent tes contrôles ? est-ce que tu dessines toi même ? auquel cas, il faut désallouer tous les objets graphiques quand tu n'en a plus besoin.
Il faut bien sûr que tu utilises la méthodes Dispose, mais ca, je pense que tu t'en doutes....
Tu utilises à priori un base de donnes... est-ce que tu fermes tes recordset quand tu ne les utilises plus ?

Tu pourrais donner plus de précisions sur ton code ?
0
cs_revlis Messages postés 41 Date d'inscription mardi 15 juillet 2003 Statut Membre Dernière intervention 7 décembre 2004
7 déc. 2004 à 08:03
pfff... c'est bon, sortez les martinez, et preparez les caillou.. 75% des recordset n'étaient pas fermés.. et comme j'utilise une object static pour mes requettes, il étaient pas pret d'etre fermés...

Connaissez vous un outils qui permet d'avoir la liste des objets ouvert et la mémoire qui leurs sont affecté ?..
0
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
7 déc. 2004 à 08:33
de mémoire CLR Profiler, par MS

Cocoricoooooooo !!!!
coq
MVP Visual C#
0
Rejoignez-nous