根据对象的存活周期进行分类,短命对象归为新生代,长命对象归为老年代

根据不同代的特点,寻取合适的收集算法

    少量对象存活,适合复制算法。 比如新生代

    大量对象存活,适合标记清理或者标记压缩算法。不如老年代 1 担保 2 多次回收后进入的

因此老年代会有大量的对象存活


分代思想



可触及  可复活 不可触及的

分代思想

分代思想


分代思想

什么对象是根

  栈中的引用对象 线程中正在局部变量

  全局对象  方法区的静态成员或者常量引用的对象

  native方法中引用的对象


分代思想

stop-the-world

   java 中一种全局暂停的现象

  全局停顿,所有java代码停止,native代码可以执行,不能与jvm交互

  多半是由gc引起的

         dump线程

 。     死锁检查

 。      堆dump

Gc为什么全局停顿

 。  可能会有新的垃圾产生,房间永远打扫不完。

jc 有时候比较短 新生代gc0.00几秒

老年代的gc可能比较长

危害

  长时间服务停顿,没有想用

   遇到HA系统,可能会引起主备切记,危害生产环境

 例如肯能造成 主备机都启动 ,影响生产环境

分代思想

map.clear()后,没有引用对象了,就会备当作垃圾回收



相关文章: