,JVM垃圾回收器将对伊甸园区进行垃圾回收,将伊甸园区中的不在被其他对象所引用的对象进行销毁,在加载新的对象放到伊甸园区
然后将伊甸园区中的剩余对象移动到幸存者 0 区....如果再次出发垃圾回收,此 时上次幸存下来存放到幸存者 0 区的对象,如果没有回收,就会被放到幸存者 1 区,每次会保证有一个幸存者区是空的....整堆收集出现的情况
System.gc() 时
老年区空间不足
方法区空间不足 开发期间尽量避免整堆收集.
12.2TLAB机制
为什么要有TLAB
堆区是线程共享区域,任何线程都可以访问到堆区中的共享数据...,就会停止整个程序,然后经行两项工作,第一项就是标记,第二项清除
标记:Collector从引用根节点开始遍历, 标记所有被引用的对象,一般时子啊对象的header 中记录为可达对象(注意: 标记的是被引用的对象...在垃圾回收时将正在使用的内存中的存活对象复制到未被使用的内存块中,之后清除正在使用的内存块中的所有对象,交换两个内存的角色,最后完成垃圾回收。
?