Bozzo31
Messages postés1Date d'inscriptionmardi 14 janvier 2003StatutMembreDernière intervention29 novembre 2006
-
29 nov. 2006 à 19:24
wortmany
Messages postés8Date d'inscriptionjeudi 21 octobre 2004StatutMembreDernière intervention22 mai 2012
-
30 nov. 2006 à 15:16
Bonjour,
Je gère de gros volume de données via des collections en VB6.
Lorsque je souhaite libérer la mémoire via l'instruction "SET MaCollection = Nothing", l'instruction peut prendre beaucoup de temps (1 minute !).
Avez-vous connaissance de ce problème et éventuellement une solution de contournement ?
Merci par avance,
Dolphin Boy
Messages postés630Date d'inscriptionvendredi 5 mai 2006StatutMembreDernière intervention17 février 2007 29 nov. 2006 à 20:21
Salut,
Tu as combien d'éléments dans ta collection ?
Je mets des Set MonObjet = Nothing chaque fois que je n' ai plus besoin de cet objet et ça n'a jamais alourdi ni ralenti mes progs, bien au contraire.
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 29 nov. 2006 à 20:32
mortalino : forcément, avec des long ca va très vite !
Par contre, dès que tu as à gérer des objets plus compliqués qui contiennent eux même des collections, ou des recordsets ouverts par exemple, c'est déjà beaucoup moins rapide !
Comme le dit Dolphin boy, essaye de détruire tes objets dès que tu n'en a plus besoin !
Les collections, c'est bien pratiques, mais c'est loin d'être rapide dès qu'on utilise des objets un peu lourd en grande quantité ! Peut-être devrais-tu revoir ton architecture et passer par des tableaux, moins souples à utiliser, mais bien plus rapides !
wortmany
Messages postés8Date d'inscriptionjeudi 21 octobre 2004StatutMembreDernière intervention22 mai 2012 30 nov. 2006 à 15:03
J'ai le meme probleme avec mes objects en faite quand tu lui dit blabla = nothing il le mais en memoire et le fait réélement plus tard, il faut utiliser la classe "garbage collector" pour lui dire de ne pas attendre reste a savoir comment on l'utilise !!!
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 30 nov. 2006 à 15:06
wortmany : ceci n'est valable que sous .net, en vb6, les objets sont directement désalloué, pas besoin d'attendre que le garbage collector fasse son boulot !