以下是我从jvisualvm 执行GC后拍摄的快照.
和

第一张图片是Heap stats,第二张图片是perm gen stats.我无法理解我什么时候使用 GC的堆大小减少(如预期的那样)但是永久代的分配大小增加了(尽管使用的permgen大小保持不变).What could be the possible explanation of such behavior?
使用JVM参数
-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
Run Code Online (Sandbox Code Playgroud)
注意:出于适当原因,我更改了名称(ex xyz.jar).
JVm信息:
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>
Run Code Online (Sandbox Code Playgroud)