每天记录一道Java面试题---day39

GC如何判断对象可以被回收了

回答重点

  • 引用计数法:
    • 每个对象由一个引用计数属性,新增一个引用时计数器加1,引用释放时计数减1,计数为0时可以回收。
  • 可达性分析法:
    • 从GC Roots开始向下搜索,搜索所走过的路径称为引用链。当一个对象到GC Roots没有任何引用链相连时,则证明此对象是不可用的,那么虚拟机就判断时可回收对象。
  • GC Roots的对象有:
    • 虚拟机栈中引用的对象
    • 方法区中类静态属性引用的对象
    • 方法区中常量引用的对象
    • 本地方法栈中JNI(Native方法)引用的对象
相关推荐
2401_8318249610 分钟前
使用Fabric自动化你的部署流程
jvm·数据库·python
njidf29 分钟前
Python日志记录(Logging)最佳实践
jvm·数据库·python
2401_8512729932 分钟前
实战:用Python分析某电商销售数据
jvm·数据库·python
2401_857918291 小时前
用Python和Twilio构建短信通知系统
jvm·数据库·python
樹JUMP1 小时前
使用Docker容器化你的Python应用
jvm·数据库·python
左左右右左右摇晃2 小时前
Java并发——synchronized锁
java·开发语言
2501_945423542 小时前
使用Fabric自动化你的部署流程
jvm·数据库·python
2401_846341652 小时前
用Pandas处理时间序列数据(Time Series)
jvm·数据库·python
消失的旧时光-19432 小时前
Android 面试高频:JSON 文件、大数据存储与断电安全(从原理到工程实践)
android·面试·json
yuhaiqiang2 小时前
被 AI 忽悠后,开始怀念搜索引擎了?
前端·后端·面试