社区
Java SE
帖子详情
垃圾是怎么回收的?????
omphalos
2002-11-01 12:21:33
问一个一直高不明白的问题:
java的回收机制究竟是如何工作的,都要经过那几步?
Runtime.gc() System.gc() finalize() Runtime.runFinalization()
System.runFinalization() 之间的关系是什么,系统在什么时候调用哪个方法?
自己调用了又会有什么现象?
各位高手,谢了!!
...全文
62
4
打赏
收藏
垃圾是怎么回收的?????
问一个一直高不明白的问题: java的回收机制究竟是如何工作的,都要经过那几步? Runtime.gc() System.gc() finalize() Runtime.runFinalization() System.runFinalization() 之间的关系是什么,系统在什么时候调用哪个方法? 自己调用了又会有什么现象? 各位高手,谢了!!
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
fastmask
2002-11-04
打赏
举报
回复
按照think in java的说法,java的垃圾清理没有但是线程来实现,你自己调用gc是没有问题的,就是要把握好时机。
xiaolie
2002-11-04
打赏
举报
回复
垃圾回收的原理是应用计数(reference counting)和跟踪收集(tracing collector)。其核心条件是:
1、所有object(堆中分配的内存块)都必须用指针(再栈或寄存器中)引用(c/c++就不是这样,它允许变量直接指向object/struct地址)
2、指针不允许运算(否则应用计数和跟踪收集就无从谈起了)
DanielYWoo
2002-11-02
打赏
举报
回复
你可以看看Core Java 和 Thinking In Java,
如果你还想要深入看,可以看Java Virtual Machine Specification 2nd Version, 在Sun的网站上有的下
Koham
2002-11-01
打赏
举报
回复
自己调用这些都不会有什么明显的动作,只有当你的资源低到一定程度的时候才会进行垃圾回收,回收的时候从java.lang.Object开始找起,任何不和外界通信的都认为是垃圾,或者只是两个之间通信的,两个都认为是垃圾:原理就是这样。
JVM中
垃圾
回收
JVM中的
垃圾
回收
是通过对堆内存进行管理、清理无用对象,从而确保应用的高效运行。整个
垃圾
回收
过程包括对象的分代存储、不同的
垃圾
回收
算法(标记-清除、复制、标记-整理等),以及多种
垃圾
回收
器(Serial GC、Parallel GC、CMS GC、G1 GC等)来适应不同的应用场景。优化
垃圾
回收
是一个综合的过程,需要根据应用的特性选择合适的
垃圾
回收
器,并通过合理的内存分配、减少对象创建与销毁、调优对象晋升策略等方法减少GC对应用性能的影响。
一文整明白js中
垃圾
回收
,
垃圾
回收
的机制,为什么有
垃圾
回收
讲述了js中为什么有
垃圾
回收
,
垃圾
回收
的机制
java八股-
垃圾
回收
机制-
垃圾
回收
算法,分代
回收
,
垃圾
回收
器
深入的图文并茂讲解
垃圾
回收
器,
垃圾
回收
算法,分代
回收
垃圾
回收
:
垃圾
回收
器
垃圾
收集器分类作用位置使用算法特点适用场景Serial串行运行作用于新生代复制算法响应速度优先适用于单CPU环境下的client模式ParNew并行运行作用于新生代复制算法响应速度优先多CPU环境Server模式下与CMS配合使用Parallel并行运行作用于新生代复制算法吞吐量优先适用于后台运算而不需要太多交互的场景Serial Old串行运行作用于老年代标记-压缩算法响应速度优先适用于单CPU环境下的Client模式并行运行作用于老年代。
垃圾
回收
算法和
垃圾
回收
器
二万九千字,图文并茂解释
垃圾
回收
算法和
垃圾
回收
器,让你彻底理解
垃圾
回收
算法和
垃圾
回收
器
Java SE
62,620
社区成员
307,251
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章