如何判断一个java对象还活着

引用计数算法

引用计数器的算法是这样的:在对象中添加一个引用计数器,每当有一个地方引用它时,计数器值就加一;当引用失效时,计数器值就减一;任何时刻计数器为零的对象就是不可能再被使用的。

缺点:循环引用的场景无法释放

可达性分析算法

目前 Java 虚拟机的主流垃圾回收器采取的是可达性分析算法。这个算法的实质在于将一系列 GC Roots 作为初始的存活对象合集(Gc Root Set),然后从该合集出发,探索所有能够被该集合引用到的对象,并将其加入到该集合中,这个过程我们也称之为标记(mark)。最终,未被探索到的对象便是死亡的,是可以回收。

相关推荐
阿猿收手吧!10 分钟前
【计算机网络】HTTP1.0 HTTP1.1 HTTP2.0 QUIC HTTP3 究极总结
开发语言·计算机网络
JAVA学习通11 分钟前
图书管理系统(完结版)
java·开发语言
abigalexy17 分钟前
深入Java锁机制
java
paishishaba18 分钟前
处理Web请求路径参数
java·开发语言·后端
七七七七0719 分钟前
C++类对象多态底层原理及扩展问题
开发语言·c++
神仙别闹20 分钟前
基于Java+MySQL实现(Web)可扩展的程序在线评测系统
java·前端·mysql
程序无bug21 分钟前
Java中的8中基本数据类型转换
java·后端
雪球工程师团队33 分钟前
代码“蝴蝶效应”终结者:AI Review + AST 联展,构建智能测试防御新体系
java·ai编程·测试
你喜欢喝可乐吗?40 分钟前
RuoYi-Cloud ruoyi-gateway 网关模块
java·spring cloud·gateway