永发信息网

java回收机制的原理是什么?

答案:1  悬赏:30  手机版
解决时间 2021-11-16 15:57
java回收机制的原理是什么?
最佳答案
垃圾回收是java与c/c++的最大不同。有了jvm的自动垃圾收集机制,就可以让程序员专注于程序逻辑开发,而不是花费大量的时间是考虑变量应该在什么时候去释放。
首先我们要知道要,jvm是如何判断一个对象已经变成了”垃圾“的呢?

一般用的是两个方法:
1)引用记数法:
为每个对象保存一个引用的数量,每增加一个引用这个值就加1,每减少一个引用就减1.如果这个记数变为0了,就说明这个对象已经不再被使用了。那么jvm就认为这个对象是可以回收的了。
但是这个方法有一个缺点,就是无法解决循环引用的问题。A引用B,B也引用A,如果A,B两个对象都不再被使用了,那么这两个对象其实都是可以被回收的,但是他们的引用记数不为0.所以用这个办法就没有办法回收了。
2)根搜索算法:
从一系列的”GC Roots“对象开始向下搜索,搜索走过的路径称为引用链。当一个对象到”GC Roots“之间没有引用链时,被称为引用不可达。引用不可到的对象被认为是可回收的对象。
java中可以当做为”GC Roots“对象的包括:
1:jvm虚拟机栈(栈帧中的局部变量表)中引用的对象
2:方法区中的类静态属性引用的对象
3:常量池中的常量引用的对象
4:本地方法栈JNI(native方法)中的引用的对象
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
在网上买东西用网银怎么支付U盾要怎么弄
起名字侯馥什么好听
文学中常有“史诗般的”这一形容词,请问“史
大家好,请问凌源农村低保每月给多钱,多谢
求都市小说 主角是恶魔的
怎么鉴别金刚菩提是否是树脂的 新手求指教
请问“乙”字在以下情况中何解
国标矿粉烧失量咋做
请各位帮忙,sz9-10000/35型变压器,这型
有轻裳这个词吗
什么叫做暧昧 男人泡妞必用的16个潜规则
那4月17号是帐单日,10号的还款曰,我4月19号刷
正视眼镜地址在哪,我要去那里办事,
东芝笔记本电脑生产基地在哪里
香料腌干果的做法步骤图,香料腌干果怎么做
推荐资讯
什么是容错性
求解平民黑暗骑士带什么武器什么防具
液晶面板的简介
同胞的狗可以交配吗?
frameset 子框架高度不够被隐藏了怎么办;
佳人女子美容美体生活馆地址有知道的么?有点
浙江嘉兴首富的儿子是谁?
怎样进行数学计算教学
红桃K专业发型设计室地址在什么地方,我要处
关于房屋装修材料采购
液压与气动专业怎么样
26号刚办的卡,18元月租,说是这个月只扣一半
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?