Stop-the-World和Safepoint
Stop-the-World
JVM由于要执行GC而停止了应用程序的执行;
任何一种GC算法中都会发生,除了GC所在线程以外,所有线程都处于等待状态,直
到GC任务完成;
多数GC优化通过减少Stop-the-World发生的时间来提升程序性能,从而使系统具有
高吞吐、低停顿的特点。
Safepoint
分析过程中对象引用关系不会发生变化的点;
产生Safepoint的地方:方法调用、循环跳转、异常跳转等;
安全点数量适中;
在可达性分析中,要分析哪个对象没有引用的时候,必须在一个快照状态点进行,
在这个点所有的线程都被冻结了,不能出现在分析过程中,对象引用关系还在不停变化的
情况,因此,分析结果需要在某个节点具备确定性,这样的节点被叫做安全点。
还没有评论,来说两句吧...