IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

Clear de liste de liste


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre expérimenté
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Par défaut Clear de liste de liste
    Bonjour

    En bon vétéran du C, lorsque je fais un free de tableau de pointeur de pointeur, je libere d'abord les pointeurs de second rang ensuite les pointeurs de poiteurs ce qui nécessiye evidement un boucle


    Je me demandais si en Csharp il etait necessaire de proceder de la meme maniere quand on fait un Clear de Liste de Liste ou si le FW est sufisement malin que pour faire le travail tout seul ?


    A priori je pense qu'on va me dire : normalement le GC va faire le travail mais il est toujours bon de ne pas surcharger ce brave garçon qui a beaucoup a faire

  2. #2
    Membre expérimenté
    Avatar de Lyche
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2007
    Messages
    2 523
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 523
    Billets dans le blog
    4
    Par défaut
    hmm, je vais ptet dire une connerie mais

    Rejoignez la communauté du chat et partagez vos connaissances ou vos questions avec nous

    Mon Tutoriel pour apprendre les Agregations
    Consultez mon Blog SQL destiné aux débutants

    Pensez à FAQ SQL Server Ainsi qu'aux Cours et Tuto SQL Server

  3. #3
    Membre chevronné
    Inscrit en
    Décembre 2008
    Messages
    256
    Détails du profil
    Informations personnelles :
    Âge : 48

    Informations forums :
    Inscription : Décembre 2008
    Messages : 256
    Par défaut
    T'as une façons assez simple de tester ça.
    Imagine tu as une liste de liste d'objets de type MyClass.
    Dans le destructeur de la classe MyClass, tu fais un Console.WriteLine("Destruction d'une instance").
    Tu alloues ta liste de liste de MyClass, puis tu la désalloue et tu fais un appel explicite au ramasse-miettes avec System.GC().

    Reste plus qu'à compter le nombre de lignes "Destruction d'une instance" sur ta console

  4. #4
    Membre Expert Avatar de Guulh
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    2 160
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2007
    Messages : 2 160
    Par défaut
    Citation Envoyé par Lyche Voir le message
    hmm, je vais ptet dire une connerie mais
    Y'a pas de Dispose sur les listes

    Dispose ne sert pas à nettoyer la mémoire ; ça sert à libérer des ressources (connexion à la base; handle de fenêtre, fichier...)

    Ici, un taListe.Clear() suffit. Mais ce n'est pas un cas particulier, ça, pour le GC.

    Répétons : on ne peut pas libérer la mémoire occupée par un objet en C#. C'est le GC qui se charge de la faire quand il est sûr que l'objet est devenu inaccessible. Et en faisant taListe.Clear(), toutes les sous-listes et les objets qui n'auront pas été référencés ailleurs vont devenir inaccessibles, et seront libérés lors d'un prochain passage du GC.

  5. #5
    Membre expérimenté
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Par défaut
    Merci Guuhl,

    Ton explication est tres claire !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Regrouper une liste en liste de listes
    Par West01 dans le forum Prolog
    Réponses: 12
    Dernier message: 14/03/2008, 14h07
  2. Liste de liste?
    Par Bethoring dans le forum C++
    Réponses: 4
    Dernier message: 16/11/2005, 18h19
  3. Liste de listes
    Par SteelBox dans le forum Prolog
    Réponses: 5
    Dernier message: 16/10/2005, 16h21
  4. acceder au n iéme element d'une liste std::list
    Par sorari dans le forum SL & STL
    Réponses: 4
    Dernier message: 23/03/2005, 15h21
  5. [langage] tri avancé, liste de listes
    Par schnecke dans le forum Langage
    Réponses: 6
    Dernier message: 29/03/2004, 14h00

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo