- 强引用回收的步骤
1、判断是否有必要执行finalize方法 下面两种情况没有必要执行了 a)对象没有重写finalize方法 b)finalize方法已经被虚拟机调用过了 2、如果上述条件判断出,是需要执行finalize方法的;那么此对象将会放置在一个叫做 F-Queue的队列中,并由虚拟机自建的Finalizer线程去执行它(此线程低优先级) 3、是被回收还是逃离回收 如果在对象的finalize方法的逻辑中把this又被存活的对象引用了,则判断为逃离回收了 如果没有被其他存活对象引用上,则执行回收 - 弱引用回收的步骤
当内存不够时,一旦发生GC,则立即回收弱引用的内存
强引用和弱引用jvm回收区别
最新推荐文章于 2024-08-16 05:30:00 发布
本文详细解析了强引用和弱引用的回收步骤。强引用回收涉及对象的finalize方法执行,若对象重新被引用则逃离回收;弱引用则在内存不足时立即回收。深入理解引用类型有助于资源管理。

1444

被折叠的 条评论
为什么被折叠?



