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

MFC Discussion :

mémoire sous vc++


Sujet :

MFC

  1. #1
    Membre éclairé
    Inscrit en
    Septembre 2002
    Messages
    230
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 230
    Par défaut mémoire sous vc++
    bonjour à tous,

    je voudrais savoir si vc++ utilise pleinement la capacité mémoire de l'ordinateur?
    En fait, j'ai 1Go de RAM, et je fais du traitement d'images sous VC++. J'ai souvent un message "Mémoire Insuffisante" lorsque je fais mes traitements sur les images. Pourtant dans mon programme je libère bien les espaces mémoires une fois que j'en ai plus besoin de mes variables.
    C'est vrai que j'utililse des tableaux de grandes tailles mais je me demande si j'ajoute une barrette mémoire est ce que mon problème sera résolu? où c'est plutôt une limitation de VC++ qui ne peut gérer qu'une certaine capacité de la mémoire.


    Merci

  2. #2
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 395
    Par défaut
    tu alloues avec quelles fonctions? malloc() ?
    La C run-time library est peut-être limitée: Essaie les fonctions de l'API (GlobalAlloc()/LocalAlloc(), HeapAlloc() ou VitualAlloc(), c'est un peu au choix...
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  3. #3
    Membre éclairé
    Inscrit en
    Septembre 2002
    Messages
    230
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 230
    Par défaut
    voilà comment j'alloue la mémoire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    byte *img = new byte[largeur*hauteur];

  4. #4
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 395
    Par défaut
    donc, sur le tas C++... Comme je te l'ai dis, essaie de voir si ça fait la même chose avec les fonctions de Windows: C'est peut-être le tas C++ qui est trop petit pour tes besoins (ou bien, tu as une fuite quelque part)
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  5. #5
    Expert confirmé

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 756
    Billets dans le blog
    3
    Par défaut
    VC++ n'y est pour rien, c'est la responsabilité de ton code. Etudie la consommation mémoire de ton process, si elle ne fait qu'augmenter, tu as très certainement des fuites...

  6. #6
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par défaut
    surtout que le message memoire insuffisante peut arriver si les valeurs calcukées pour l'allocation sont erronées/explosées/non initialisées/negatives etc...

  7. #7
    Membre éclairé
    Inscrit en
    Septembre 2002
    Messages
    230
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 230
    Par défaut
    qu'est ce que tu veux dire "frascape" par des valeurs explosées !!
    Merci

  8. #8
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par défaut
    largeur*hauteur non initialisées par exemple ....

  9. #9
    Membre éclairé
    Inscrit en
    Septembre 2002
    Messages
    230
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 230
    Par défaut
    Merci à tous et à toutes.

    Je vais revérifier mon code.

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

Discussions similaires

  1. [SAX] Parser un XML sans le charger en mémoire sous forme de document
    Par tdeco dans le forum Format d'échange (XML, JSON...)
    Réponses: 9
    Dernier message: 10/08/2007, 13h00
  2. Comment fonctionne la mémoire sous Xp ou plutôt.
    Par zoltix dans le forum Windows XP
    Réponses: 4
    Dernier message: 27/07/2007, 12h01
  3. Comme intercepter les fuites de mémoire sous VS?
    Par Gabrielly dans le forum Visual C++
    Réponses: 4
    Dernier message: 18/09/2006, 20h57
  4. Problème de jardinage mémoire sous Linux
    Par Mike29 dans le forum C
    Réponses: 7
    Dernier message: 01/08/2006, 19h02
  5. Accéder à un espace mémoire sous XP
    Par keny dans le forum x86 32-bits / 64-bits
    Réponses: 4
    Dernier message: 02/08/2002, 12h37

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