Di seguito sono riportate le istantanee che ho scattato dopo l'esecuzione di da GC da jvisualvm. e
Perché le dimensioni allocate di generazione permanente aumentano dopo l'esecuzione di GC?
prima immagine è Heap statistiche e 2 ° uno è perm gen statistiche. Non riesco a capire quando ho utilizzato GC nella dimensione dell'heap utilizzata diminuita (come previsto) ma la dimensione allocata della generazione permanente è aumentata (sebbene la dimensione di permgen utilizzata sia rimasta invariata). What could be the possible explanation of such behavior?
argomenti JVM usati
-Xbootclasspath/p:../xyz.jar
-Xbootclasspath/a:../abc.jar
-Djava.endorsed.dirs=../resolver
-Djava.library.path=../framework
-Djavax.management.builder.initial=JBeanServerBuilder
-Djavax.net.ssl.trustStore=../certs
-Dorg.mortbay.log.class=JettyLogger
-Xms128m
-Xmx256m
-Xdebug
-Xnoagent
-Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=2000
Nota: ho cambiato il nome (ex xyz.jar) per motivi di correttezza.
JVM Info:
JVM: Java HotSpot(TM) 64-Bit Server VM (23.6-b04, mixed mode)
Java: version 1.7.0_11, vendor Oracle Corporation
Java Home: /home/aniket/jdk1.7.0_11/jre
JVM Flags: <none>
direi che il GC rivaluta le varie dimensioni che ha da controllare come parte del percorso di raccolta. Quindi potrebbe decidere che è un po 'stretto sul lato del genoma delle cose e un aumento. –
Quale VM/gc si usa, con quali parametri si avvia la VM? –
@JensSchauder: questa è probabilmente la migliore risposta possibile per questa domanda senza molte speculazioni sugli interni di HotSpot ... –