C'est un doute conceptuel que j'ai. Je demande à quelqu'un de résoudre mon doute. J'ai une application d'une taille de 4,5 Mo et je calcule l'utilisation de la mémoire des processus dans l'application. J'obtiens que l'utilisation de la mémoire de chaque processus est de 16MB...
final Runtime rt = Runtime.getRuntime() ; rt.gc() ; final double startSize = rt.totalMemory()-rt.freeMemory() ;
Est-ce que cela signifie que l'utilisation de la mémoire de l'application est la même que la taille de l'application ?
0 votes
Êtes-vous sûr que par "utilisation de la mémoire" vous voulez dire utilisation de la RAM ? Il est facile de confondre les deux.
0 votes
J'ai vu que Runtime.getRuntime() va me donner de la mémoire dans la VM
0 votes
Que produisait-il ?
0 votes
Oui, comme je l'ai dit, le double final startSize = rt.totalMemory()-rt.freeMemory() produisait 16 Mo pour chaque processus.
0 votes
Bon point. Hmmm, il pourrait s'agir du cache et des données de l'application. L'application elle-même peut faire 4,5 Mo, mais qu'en est-il de tous les autres éléments qu'elle contient ?
0 votes
La mémoire cache est de 20 Ko et les données de l'application sont de 16 Ko.
0 votes
Laissez-nous poursuivre cette discussion dans le chat .