标签:new bsp highlight collect bag 指定 cti 对象 多次
GC的英文全拼是Garbage Collection,意思是垃圾收集。
Java 将堆内存分为三代来管理: - 年轻代 (Young Generation) - 年老代 (Old Generation) - 永久代 (Perm Generation)
年轻代:又分为Eden、From和To,其中From和To又统称为Survivor Spaces(幸存区)。年轻代大小可以由-Xmn来控制,也可以用-XX:SurvivorRatio来控制Eden和Survivor的比例,使用–XX:NewRatio来指定新生代和年老代的大小比例。
年老代:用来存放多次垃圾回收依然存活的对象。
永久代:来存放方法区。可通过-XX:PermSize和-XX:MaxPermSize来指定最小值和最大值。
正常情况下,一个对象从创建到销毁,应该是从Eden,然后到Survivor Spaces(幸存区),再到Old Generation(年老代),最后在某次GC下消失。也可能一个对象直接在Eden里死掉,也可能一直在Old Generation(年老代)存活。
Java GC分为两类:
Minar GCFULL GCMajor GCMinar GC:从年轻代空间(包括 Eden 和 Survivor 区域)回收内存被称为 Minor GC。
Major GC:是清理老年代。
FULL GC:是清理整个堆空间—包括年轻代和老年代。
GC的时候,会暂停全世界(stop-the-world),意思是停止所有的应用线程,所以要避免不必要的GC已提高性能。
-XX:+PrintGCDetails打印日志详情。
-XX:+PrintGCTimeStamps打印时间戳。
-Xloggc输出GC日志到文件。
标签:new bsp highlight collect bag 指定 cti 对象 多次
原文地址:http://www.cnblogs.com/smallyard/p/6067824.html