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

Windows Forms Discussion :

Libérer de la mémoire avec la destruction de contrôles!


Sujet :

Windows Forms

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    537
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 537
    Points : 369
    Points
    369
    Par défaut Libérer de la mémoire avec la destruction de contrôles!
    Bonjour à tous!

    Je créé un panel dans lequel je place plusieurs picturebox!
    Lors d'un clique tout les contrôles du panel sont détruits, et j'en recharge des nouveaux!
    Le problème vient du fait que toute la mémoire prise n'est pas libérée!
    Ce qui pose problème avec au bout d'un moment un dépassement de mémoire!

    Avant de détruire les picturebox j'ai même fait une boucle qui libère les ressources de leur propriété image!

    Quelqu'un a une idée?

  2. #2
    Membre actif
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    614
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 614
    Points : 299
    Points
    299
    Par défaut
    je ne suis pas sur mais regarde du cote de la méthode Dispose() de tes contrôles libérés.

  3. #3
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 154
    Points : 25 072
    Points
    25 072
    Par défaut
    Citation Envoyé par NejNej Voir le message
    Lors d'un clique tout les contrôles du panel sont détruits
    comment les détruits tu ?


    Citation Envoyé par NejNej Voir le message
    Le problème vient du fait que toute la mémoire prise n'est pas libérée!
    Ce qui pose problème avec au bout d'un moment un dépassement de mémoire!
    si tu n'as plus de référence c'est pas censé exploser car le garbage collector libère la mémoire


    Citation Envoyé par NejNej Voir le message
    Avant de détruire les picturebox j'ai même fait une boucle qui libère les ressources de leur propriété image!
    de quelle manière ?
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    537
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 537
    Points : 369
    Points
    369
    Par défaut
    C'est bon j'ai résolu!

    En réalité les picturebox affichées provenait d'objets réalisés par moi!
    En plus de libérer la picturebox du panel je m'occupe aussi de celle de l'objet!

    Désolé pour le dérangement!

    J'aurais quand même une question avant de tagger résolu:

    Quelle est la capacité maximum d'un bitmap (System.Drawing)?
    Comment charger une image de 80 Mo dans une picturebox?

  5. #5
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 154
    Points : 25 072
    Points
    25 072
    Par défaut
    je viens d'instancier des bitmap pour voir
    un bitmap carré de 20000pixels de coté prend 1.5Go de ram
    la limite doit dépendre de la mémoire dispo (ram+swap)

    et pour ton bitmap de 80Mo dans picturebox, tu as essayé ? ca marche pas ? sinon tu le découpes dans le programme avant de le mettre dans le picturebox
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

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

Discussions similaires

  1. [Crystal Report]Problème de mémoire avec le moteur RDC
    Par sur_uix dans le forum SAP Crystal Reports
    Réponses: 3
    Dernier message: 26/05/2005, 09h09
  2. Problème de mémoire avec BDE
    Par Machuet dans le forum Bases de données
    Réponses: 3
    Dernier message: 13/07/2004, 10h11
  3. Problémes mémoire avec le bde sur des bases paradox
    Par Keke des Iles dans le forum Bases de données
    Réponses: 2
    Dernier message: 27/05/2004, 16h55
  4. Problème mémoire avec une dll par chargement dynamique
    Par widze19 dans le forum C++Builder
    Réponses: 6
    Dernier message: 15/12/2003, 13h20
  5. Comment bien gerer la mémoire avec les TStringList?
    Par david_chardonnet dans le forum Langage
    Réponses: 5
    Dernier message: 18/06/2003, 09h57

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