Loading

随笔分类 -  JVM

摘要:HotSpot 使用 OopMap 把引用类型的指针记录下来,让 GC Roots 的枚举变得快速准确。 为了减少更新 OopMap 的开销,引入了 安全点。GC STW 时,线程需要跑到距离自己最近的安全点,更新完 OopMap 才能挂起。 处于Sleep 或者 Blocked 状态的线程无法跑到安全点,需要引入安全区域。GC 的时候,不会去管处于安全区域的线程,线程离开安全区域的时候,如果处于 STW 则需要等待直至恢复。 阅读全文
posted @ 2021-09-12 18:13 小新是也 阅读(3567) 评论(0) 推荐(2)
摘要:什么是垃圾:没有任何引用指向的一个或多个对象。 如何识别垃圾,有两种算法: 1. 引用计数法:通过给对象添加被引用的次数来识别。优点是回收简单及时;缺点是无法解决循环引用。 2. 可达性分析法:从一系列根对象(GC Roots)开始,根据引用关系向下搜索,如果某个对象到 GC Roots 间没有任何引用,则此对象就是垃圾。优点是解决了循环引用;缺点是耗时和 STW。 阅读全文
posted @ 2021-09-11 17:44 小新是也 阅读(505) 评论(2) 推荐(2)