Méthode Dispose...

Diamondduff Messages postés 35 Date d'inscription mardi 7 décembre 2004 Statut Membre Dernière intervention 24 novembre 2005 - 5 janv. 2005 à 14:51
Arthenius Messages postés 1182 Date d'inscription mercredi 21 janvier 2004 Statut Membre Dernière intervention 6 septembre 2011 - 5 janv. 2005 à 18:55
Je débute en c#, lorsque l'on utilise une classe faut-il la refermer?
j'ai vu la méthode dispose() dans la classe...
Test Maclasse = New test();
... actions...
Maclasse.dispose(); ???????????????????????????????? ou ce n'est pas la peine?
Comment c'est géré en mémoire?

quoi? quoi? comment ça je suis un maniaque du code propre?

sinon ca sert à quoi dispose?
j'imagine que c'est du style j'ouvre ma connection à la base en constructeur et je la ferme dans dispose? (excusez je viens d' ASP/VB6)


-------------------------------------
En apprentissage de C# !
Learn to Forget...
-------------------------------------
A voir également:

7 réponses

cs_RMI Messages postés 305 Date d'inscription vendredi 18 juillet 2003 Statut Membre Dernière intervention 2 août 2010 2
5 janv. 2005 à 18:01
D'aprés ce que j'ai pu lire, le garbage colector s'execute lorsque la mémoire est pleine et donc celà se traduit par un ralentissement du soft à ce moment là. Il est donc conseillé d'utiliser dispose lorsque l'objet possède cette méthode.

Théo
0
MorpionMx Messages postés 3466 Date d'inscription lundi 16 octobre 2000 Statut Membre Dernière intervention 30 octobre 2008 57
5 janv. 2005 à 18:32
En fait, le garbage collector anticipe la saturation de la mémoire, il n'attend pas que celle ci soit pleine.

Tu peux cependant agir sur le comportement du ramasse miette comme le
dit bidou. Par exemple, lancer le ramasse-miettes toi meme en utilisant
la focntion System.GC.Collect();



a++



Mx
0
Diamonduff Messages postés 2 Date d'inscription lundi 15 septembre 2003 Statut Membre Dernière intervention 5 janvier 2005
5 janv. 2005 à 18:33
hum...
et si c'est ma classe, pas de constructeur particulier, juste des méthodes indépendantes...

J'utilise aussi la classe FTP trouvée sur le site, j'ai besoin de faire un .dispose?
0
Diamonduff Messages postés 2 Date d'inscription lundi 15 septembre 2003 Statut Membre Dernière intervention 5 janvier 2005
5 janv. 2005 à 18:36
tiens...mon profil à sauté...bugggg?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
MorpionMx Messages postés 3466 Date d'inscription lundi 16 octobre 2000 Statut Membre Dernière intervention 30 octobre 2008 57
5 janv. 2005 à 18:46
Le premier message a été posté avec un profil diamondduff (double d)
0
Arthenius Messages postés 1182 Date d'inscription mercredi 21 janvier 2004 Statut Membre Dernière intervention 6 septembre 2011 14
5 janv. 2005 à 18:55
tu peux toujours mettre tes objets à Null...

il me semble qu'il sont recuperer par le GC...
et niveau ressource un Null doit etre mieux qu'un dataset rempli avec 3 tables de 50 000 lignes chacunes...
à mon avis...


Arthenius

"Il n'y a pas de mauvais développeurs,...
mais uniquement de mauvais utilisateurs..."
0
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
5 janv. 2005 à 15:16
Salut,

En C# c'est le garbage collector qui s'occupe de détruire les objets quand ils ne sont plus utilisés. Pas besoin donc d'appeler la méthode dispose() !
Ceci dit, il paraît (j'ai jamais été dans un tel cas) que parfois il est plus pratique (pour des questions de performance) d'appeler le déstructeur soit-même...
Regarde un peu les méthodes statiques de la class GC ! (Garbage Collector).

Je suis certain que d'autres postes viendront compléter ma réponse...
A plus.

[Pub] http://www.csharpfr.com/auteurdetail.aspx?ID=13319 [\Pub]
C# forever
-1
Rejoignez-nous