引用计数法
每个对象上都有一个引用计数,对象每被引用一次,引用计数器就+1,对象引用被释放,引用计数器-1,直到对象的引用计数为0,对象就标识可以回收

这个可以用数据算法中的图形表示,对象A-对象B-对象C 都有引用,所以不会被回收,对象B由于没有被引用,没有路径可以达到对象B,对象B的引用计数就就是0,对象B就会被回收。
但是这个算法有明显的缺陷,对于循环引用的情况下,循环引用的对象就不会被回收。例如下图:对象A,对象B 循环引用,没有其他的对象引用A和B,则A和B 都不会被回收。
root搜索算法
这种算法目前定义了几个root,也就是这几个对象是jvm虚拟机不会被回收的对象,所以这些对象引用的对象都是在使用中的对象,这些对象未使用的对象就是即将要被回收的对象。简单就是说:如果对象能够达到root,就不会被回收,如果对象不能够达到root,就会被回收。
被启动类(bootstrap加载器)加载的类和创建的对象
jvm运行时方法区类静态变量(static)引用的对象
jvm运行时方法去常量池引用的对象
jvm当前运行线程中的虚拟机栈变量表引用的对象
本地方法栈中(jni)引用的对象
jvm在确定是否回收的对象的时候采用的是root搜索算法来实现。
补充:jvm判断对象的回收
可达性分析算法
可达性分析算法:通过一系列“GC Roots”的根对象作为起始节点集,根据引用关系向下搜索,若某个对象到根对象无任何引用链相连,则此对象不可达。
但是可达性分析后为不可达的对象不是一定要回收,会经历一个二次标记过程。
二次标记
1.如果对象在可达性分析后结果为不可达,则会被第一次标记。接着进行筛选,筛选条件为是否执行finalize()方法。
- 若该对象未覆盖finalize()方法,或finalize()已被调用过一次,则不需要执行finalize()方法。那么此对象判定为需要回收。
(对象的 finalize()方法只会被系统调用一次,下次回收该对象时, finalize()不会再执行)
- 若该对象覆盖了finalize()方法,且finalize()方法未被调用过,则需要执行finalize()方法。
2.若该对象需要执行finalize()方法,则该对象会被放置在一个F-Queue的队列中,再由一个finalizer线程执行这些对象的finalize()方法。
3.接着收集器会堆F-Queue队列的对象进行二次标记,若对象在finalize() 方法中未能逃脱,那么该对象会被二次标记,二次标记的对象判定为需要回收;
(对象可以在 finalize()方法中,将自己和引用链上的对象建立引用关系,这样在第二次标记时,收集器会将其移出回收对象的集合,以此达到逃脱)
相关推荐:
ChatGPT不登录,如何畅享AI的智能服务?,手信ai
仿写AI:智能时代的创作革命,洛江区移动房网站推广
什么是神马排名?让你的网站脱颖而出,轻松占据搜索引擎的C位!,乳山网站优化关键词排名
什么是seo长尾词,什么是seo长尾词的概念 ,绿茶ai换脸杨超越
SEO新手必看:从零开始SEO优化的终极指南,随州网站优化技巧
SEO教你如何快速提升网站排名,打破竞争壁垒!,本溪seo优化排名公司
企业营销:如何在竞争激烈的市场中脱颖而出,美装网站Seo优化
专业关键词助力SEO优化,让你的内容脱颖而出,东营响应式网站优化
SEO快排还有效果吗揭秘快速排名的真相与未来趋势,ai人像波普
为什么关键词太少会影响你的网络营销效果?,陕西seo网站推广工具
GPT版本全解:从基础到高级,如何选择最适合你的方案?,韩国ai人工智能
AI免费生成文本,内容创作新篇章
优化工具:提升工作效率的秘密武器,网站模板的优化策略是什么
“只能写作”:在创作的世界里,选择文字,就是选择自由,云南关键词排名推广报价
SEO合作:让你的网站在搜索引擎中脱颖而出,惠州抖音seo策划公司
如何下载免费AI软件,让你的工作和生活更智能
智能AI生成文章释放创作新可能
seo计算了什么,seo的常用术语 ,ai智能有意思的口令
SEO搜索关键词是什么意思?全方位解析关键词优化的核心要素,lol ai图片
为什么行业都要做seo,为什么要做seo ,ai明信片
ChatGPT不能加载过去的对话,如何提升你的使用体验?,ai智能衣服
云推SEO:让您的网站在激烈竞争中脱颖而出,网站优化公司欢迎来电
专业SEO助力企业在激烈市场竞争中脱颖而出,嘉兴海外网站推广价格
SEO包月服务:助力企业提升网站排名与流量的长期利器,网站建设流程 报读文库
SEO观察:2025年搜索引擎优化的新趋势与机遇,seo2是什么状态
为什么做seo的人很少,为了什么做seo ,ai不负你
SEO策划:让你的网站迅速脱颖而出的秘诀,seo优化和技巧
Chat启用后ESX连不上?解决方法一网打尽!,为什么AI续写这么离谱
seo需要什么人才,seo需要做什么工作 ,探索ai照片
AI助手不需要登陆-畅享便捷生活,随时随地高效工作,ai客服 对话
ChatGPTDNS出问题?如何快速解决并保障网络畅通,墨镜ai照片
SEO有话:如何用精准优化助力企业在线增长,食品微信营销推广
seo用什么写属性写,seo属于什么 ,芭田科学施肥AI
ChatGPT破解版电脑:如何获得更强大的AI助手,提升工作与学习效率,ai预设动画
用AI创作的文章算原创吗?深度背后的逻辑与意义
ChatGPT坏了用什么?替代方案,满足你的智能对话需求,星际一的ai
ChatGPT:引领智能对话新潮流,助力未来科技,ai写作免费议论文
AI上的文章属于原创吗?人工智能创作内容的归属问题
SEO热词:提升网站排名的关键秘诀,一句话营销推广怎么写好
提升写作效率,释放创意潜力文章生成AI软件的未来
SEO子-为你的网站注入流量的秘密武器,麻城网站网址优化
ChatGPT为什么访问不了?全面解析及解决方案,ai首页设计
AI免费生成文章让创作变得轻松自如
优化型网站:提升企业竞争力的必备利器,重庆网站推广工作如何
怎么查一篇文章是不是AI写的?你需要这几个关键方法!
seo能解决什么问题,seo会遇到哪些问题 ,挚爱花嫁ai
ChatGPT可以实现新闻报道的即时自动化生成,怎么更改ai2的图标
GPT在智能聊天机器人中的作用:重塑沟通体验,开创智能未来,百万级ai
SEO人工优化-让你的网页轻松登上搜索引擎首页,ai主母
AI写作免费一键生成下载,助您轻松创作!