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

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

回答重点

  • 引用计数法:
    • 每个对象由一个引用计数属性,新增一个引用时计数器加1,引用释放时计数减1,计数为0时可以回收。
  • 可达性分析法:
    • 从GC Roots开始向下搜索,搜索所走过的路径称为引用链。当一个对象到GC Roots没有任何引用链相连时,则证明此对象是不可用的,那么虚拟机就判断时可回收对象。
  • GC Roots的对象有:
    • 虚拟机栈中引用的对象
    • 方法区中类静态属性引用的对象
    • 方法区中常量引用的对象
    • 本地方法栈中JNI(Native方法)引用的对象
相关推荐
厦门德仔2 分钟前
【WPF】WPF(样式)
android·java·wpf
大春儿的试验田2 分钟前
高并发收藏功能设计:Redis异步同步与定时补偿机制详解
java·数据库·redis·学习·缓存
Gappsong8745 分钟前
【Linux学习】Linux安装并配置Redis
java·linux·运维·网络安全
hqxstudying9 分钟前
Redis为什么是单线程
java·redis
RainbowSea20 分钟前
NVM 切换 Node 版本工具的超详细安装说明
java·前端
逆风局?22 分钟前
Maven高级——分模块设计与开发
java·maven
周某某~24 分钟前
maven详解
java·maven
读书点滴26 分钟前
笨方法学python -练习14
java·前端·python
lingRJ77727 分钟前
微服务架构下的抉择:Consul vs. Eureka,服务发现该如何选型?
java·eureka·springcloud·consul·backend·microservices·servicediscovery
RainbowSea27 分钟前
问题:后端由于字符内容过长,前端展示精度丢失修复
java·spring boot·后端