【Basic computer】-----GC(gabge cllection)

本文深入解析Java中的垃圾回收(GC)机制,涵盖GC的发生时机、收集机制、收集对象类型及具体工作内容。通过理解这些核心概念,帮助读者掌握Java内存管理的关键技术。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


GC(gabge cllection)---Java 垃圾回收机制



     GC(gabge cllection),垃圾回收机制 顾名思义,垃圾回收就是释放垃圾占用的空间,那么在Java中,什么样的对象会被认定为“垃圾”?那么当一些对象被确定为垃圾之后,采用什么样的策略来进行回收(释放空间)?GC(gabge cllection)是在什么时候?对什么东西,做了什么事情?”我们从下面几个方向来进行了解:


(1)定义

(2)GC发生在什么时候?
(3)收集的机制
(4)GC对什么东西进行收集?

(5)GC都做了些什么?





 

 1,定义:

  GC是强制立即收集垃圾,释放内存---java 内存管理包括分配和释放



 2,GC发生在什么时候?

   A,系统空闲时候
   B,系统自身决定,不可预测的时间,调用System.gc()的时候
    

 3,收集的机制

   A, minor GC新生代垃圾收集动作,非常频繁,速度也快。发生条件:分配率越高minor GC执行的越高,enden 满了发生minor gc,

   B, full /Major GC: 老年代代码的GC,有major GC,至少又一次minor GC,速度比minor  GC慢。



 

 

 4,对什么东西进行收集

(1)一些不使用的对象

(2)超出作用域的对象,引用计数为空的对象
(3)从gcroot开始搜索,搜不到对象
(4)从root搜不到,经过第一次标记清理之后,还么有复活对象


5,GC做什么?


(1)删除不使用对象,腾出空间

(2)补充一下停止其他线程的执行、运行finalize等的说明。
(3)minor GC 是复制清理,from survivor, to surivor, full GC是标记清理,标记清理之后要整理、复制清理和标记清理优势快速。


评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值