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

Java Discussion :

Détecter si on est proche du dépassement de mémoire


Sujet :

Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    676
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 676
    Par défaut Détecter si on est proche du dépassement de mémoire
    Bonjour,

    J'ai plusieurs applications qui s’exécutent sur un PC, toutes ont le même principe de fonctionnement, elles remplissent une liste d'url puis les explorent. Mais j'ai un souci parfois c'est liste sont trop grandes (plusieurs centaines de milliers de liens) et c'est le dépassement de mémoire, je souhaite détecter si on est proche de la limite de dépassement et si c'est le cas limiter de plus en plus la taille maximum de cette pile de lien.
    Mais comment faire pour savoir si on est plus ou moins proche de la limite ?

  2. #2
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    Pourquoi ne pas fixer dès le départ une taille maximale raisonnable? Je ne vois pas de raison pour que cette valeur max acceptable côté mémoire varie fortement d'une exécution à une autre. Tu peux via les mxbean liés au gc être notifier quand le gc commence à trop bouloter il me semble. Mais c'est un peu bourrin comme technique. D'autres comme les softreference ou weakreference pourraientt être bien plus utiles.

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    676
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 676
    Par défaut
    Pour de nombreuses raisons la taille de la mémoire disponible varie grandement sur mon PC.
    Les MXbean permettent d'éstimer l'usage de la mémoire mais ça ne donne pas la proximité avec le dépassement de mémoire, les deux autres ne servent pas à ça

  4. #4
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    Tu veux dire que les paramètres mémoire que tu passe a java varient ou que tu as plein d'autres processus qui la bouffent?

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    676
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 676
    Par défaut
    C'est les deux, c'est pour ça que mon espace mémoire est ératique et que je veux que les programmes s'y adaptent

  6. #6
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    Tu ne pourra détecter que la partie 'déterminer si ton programme sature la jvm' via les mxbeans. La partir la jvm est trop grosse pour ton os n'est pas détectable. Elle s'attend à pouvoir disposer de la mémoire qui lui est allouée et c'est spécifique à l'implémentation. Si les autres processus sont trop gourmands, une solution est d'allouer toute la jvm au démarrage avec -xms

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

Discussions similaires

  1. Est ce que la fin du C est proche ou pas ?
    Par Nasky dans le forum C
    Réponses: 116
    Dernier message: 13/12/2016, 15h23
  2. Détecter si IE7 est installé
    Par ired dans le forum Delphi
    Réponses: 4
    Dernier message: 15/12/2006, 14h05
  3. Réponses: 3
    Dernier message: 06/03/2006, 09h59
  4. Détecter si Excel est installé
    Par zbouby dans le forum C++Builder
    Réponses: 8
    Dernier message: 08/11/2005, 16h12
  5. Qu'est-ce que "le dépassement de mémoire tampon"
    Par allex2108 dans le forum Autres Logiciels
    Réponses: 1
    Dernier message: 13/09/2005, 14h33

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