JVM知识——安全点

安全点是JVM要准备进行垃圾回收时,选定一些特定的位置,当应用程序线程执行到这些位置时,安全的先暂停下来,以便JVM执行GC线程进行垃圾回收。

JVM在字节码指令中会选取一些指令作为安全点,安全点的选取一般是循环结束、方法调用前后、异常跳转等指令位置。

如果线程长时间无法到达安全点,如线程处于sleep休眠或blocked阻塞状态,为了处理这种情况,JVM引入了安全区域的概念,安全区域是指在一段代码片段中,引用关系不会发生改变,因此只要线程处在这个区域中,外部如果要进行垃圾回收它都是安全的。当应用程序线程进入安全区域时,会标识自己已经进入了安全区域,这样GC线程就不用考虑我了,我不会给你造成任何麻烦,当此线程要离开安全区域时,会检查GC垃圾回收是否已经完成,如果完成了,则继续向下执行,否则,就必须等待,直到收到可以离开安全区域的信号为止。

相关推荐
老猿AI洞察8 小时前
7月29日热点:AI越狱事件引发行业安全反思
人工智能·安全
hz567898 小时前
音视频SDK核心能力分析:低延迟传输与高并发接入方案
网络·安全·音视频·实时音视频·信息与通信
天行健,君子而铎9 小时前
数据流动安全监测平台泛在监测与全链路防护技术研究
安全
ai_xiaogui10 小时前
PanelAI没有域名也能装?IP安装+自签HTTPS+安全加固全攻略(私有化部署必备)
tcp/ip·安全·https·私有化部署·自签证书·panelai·自带https自动续证
程序员天天困10 小时前
Arthas ognl 表达式从入门到实战:掌握在线调试最强的表达式引擎
java·jvm·后端
数据知道11 小时前
Windows 安全基线:组策略、UAC、Defender 深度配置
windows·安全·网络安全
71777712 小时前
研发效能治理标准化路径:基于信通院认证平台的全链路度量实践
安全·gitee·issue
江湖浩淼12 小时前
CVE-2021-4034-pwnkit提权
安全·web安全
长不胖的路人甲13 小时前
Serial 串行、Parallel 并行、CMS 并发收集器
java·开发语言·jvm
论迹复利13 小时前
蓝牙 OTA 升级断连、升级失败底层链路问题定位
嵌入式硬件·安全·bt