-
mysql, java et memoire
Bonjour,
j ai fait un programme en java qui permet de mettre des donnees provenant des documents XML(nombre important), dans une BD mysql. pour cela j utilise dans mon programme une table de hachage, où je peux mettre mes donnees temporairement, pour minimiser le nombre de consultation de la BD.
à chaque fois je teste est ce que la memoire du PC se sature ou non, si oui je balance tous ce qui se trouve dans la table de hachage, dans la BD, et je vide la table de hachage, voici un bout de code.
if (Runtime.getRuntime().freeMemory()<250000){
//mettre à jour ma BD
table_hachage.clear();
}
à chaque fois où je lance mon programme j ouvre le Gestionnaire des taches de Windows, et l onglet perfermance, ma conclusion c que le taux d utilisation du fichier augmente aux moments de la consultation de la BD, meme quand mon programme termine le mise à jour de la BD, l utilisation du fichier ne diminue jamais(anormale) de telle façon que toujours mon programme n arrive pas à s achever.
SVP est ce que vous pouvez m aider!!
Merci
-
Bonjour,
Il me semble que ce n'est pas l'appel de la fonction clear() qui va libérer de la mémoire.
Les références vers les objets de cette table vont être supprimées, laissant l'opportunité au GarbageCollector de les supprimer réellement à son prochain passage.
-
memoire virtuelle
il suffit d augmenter la memoire virtuelle du système est ca marche.