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

Framework .NET Discussion :

Fuite mémoire .NET


Sujet :

Framework .NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 29
    Par défaut Fuite mémoire .NET
    Bonjour,

    Je sais que il y a déja plusieurs sujet sur les fuites mémoire, mais m'a question est en relation au framework .Net.
    Jvai peut être poser une question idiote mais, est ce qu'il peut y avoir des fuites mémoires en .Net (c#)?
    En utilisant un profiler (Your Kit Profiler 3.0.5 for .net) j'ai pu visualiser le % d'utilisation du GC, qui peut certaines fois atteindre 100%, c grave ?
    En mm temps mon programme charge une grosse structure d'idientifiants.
    Alors je sais pas si je dois revoir mon code ou pas ...

    Merci pour votre aide

  2. #2
    Rédacteur
    Avatar de The_badger_man
    Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2005
    Messages
    2 745
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 745
    Par défaut
    Citation Envoyé par alaks Voir le message
    En mm temps mon programme charge une grosse structure d'idientifiants.
    c'est à dire ?
    Les règles du forum
    Le trio magique : FAQ + Cours + fonction rechercher
    Mes articles
    Pas de questions par messages privés svp

    Software is never finished, only abandoned.

  3. #3
    Expert confirmé
    Avatar de smyley
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    6 270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 6 270
    Par défaut
    Citation Envoyé par alaks Voir le message
    Jvai peut être poser une question idiote mais, est ce qu'il peut y avoir des fuites mémoires en .Net (c#)?
    Oui, par exemple si tu crées des objets infiniment en espérant qu'ils soient collectés par le GC mais en gardant une référence ailleurs genre dans une List, donc ils ne seront jamais collectés et la mémoire utilisée ne fera qu'augmenter ...

  4. #4
    Rédacteur
    Avatar de dev01
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    2 451
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 2 451
    Par défaut
    Citation Envoyé par smyley Voir le message
    Oui, par exemple si tu crées des objets infiniment en espérant qu'ils soient collectés par le GC mais en gardant une référence ailleurs genre dans une List, donc ils ne seront jamais collectés et la mémoire utilisée ne fera qu'augmenter ...
    ça sens le vécu .

    Pour ce qui est de la fuite mémoire, une autre des causes possible est l'utilisation incorrect de ressources non managé ( IE : PInvoke ) et l'oubli d'appeler Dispose sur les objet qui implémente IDisposable ...

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 29
    Par défaut
    Merci pour vos réponses.

    Quand je parlais d'identifiants je fait allusion en fait à des string (ex: "00011101", ..).
    En fait je rempli plusieurs arbres avec plus millions de string, ces listes me servent de reference pour la comparaison avec des arraylist de string.
    Apres tous ce que vous avait dit, l'interface IDisposable est elle hérité de tous objets ? je voulais utilisai la méthode dispose sur une arraylist mais je l'ai pas trouvé ..

    Dans la piece jointe , le code de liberation mémoire :
    Pièce jointe 28065

    Mon arbre a la structure suivante :
    Pièce jointe 28066

    dois je faire heriter la classe de l'interface IDisposable, destructeur, ...

  6. #6
    Rédacteur
    Avatar de The_badger_man
    Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2005
    Messages
    2 745
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 745
    Par défaut
    Citation Envoyé par alaks Voir le message
    En fait je rempli plusieurs arbres avec plus millions de string
    hum...t'aurais un autre algo ?
    Les règles du forum
    Le trio magique : FAQ + Cours + fonction rechercher
    Mes articles
    Pas de questions par messages privés svp

    Software is never finished, only abandoned.

  7. #7
    Expert confirmé
    Avatar de smyley
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    6 270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 6 270
    Par défaut
    Citation Envoyé par dev01 Voir le message
    ça sens le vécu .



    Citation Envoyé par dev01
    l'oubli d'appeler Dispose sur les objet qui implémente IDisposable ...
    Il n'est pas nécéssaire d'appeler manuellement Dispose, mais c'est préférable (le GC peut le faire automatiquement).

    Citation Envoyé par alaks
    Apres tous ce que vous avait dit, l'interface IDisposable est elle hérité de tous objets ?
    Non

    Citation Envoyé par The_badger_man Voir le message
    hum...t'aurais un autre algo ?
    +1, il y a forcément mieux ...

Discussions similaires

  1. Fuite mémoire dans application winform .NET 2.0
    Par olysmar dans le forum Framework .NET
    Réponses: 6
    Dernier message: 30/11/2012, 15h41
  2. [tomcat][memoire] java.net.URL et fuite mémoire
    Par Seiya dans le forum Tomcat et TomEE
    Réponses: 6
    Dernier message: 09/03/2009, 10h41
  3. Fuite Mémoire VB.NET
    Par LamInR dans le forum VB.NET
    Réponses: 6
    Dernier message: 11/01/2009, 18h36
  4. [C# .NET 2.0] setTooltips et fuite mémoire
    Par xtream dans le forum Windows Forms
    Réponses: 4
    Dernier message: 05/11/2006, 20h20
  5. [debug] fuites mémoires
    Par tmonjalo dans le forum C
    Réponses: 3
    Dernier message: 28/07/2003, 17h20

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