- 博客(2)
- 收藏
- 关注
原创 2021-07-20
Java GC的算法标记清除算法主要分成两个部分,首先是标记,之后是清楚,标记主要是用的可达性分析对该对象进行标记,但是该算法会导致内存碎片化严重。复制算法将内存块分成两块,其中一块内存不使用,而当另一块内存的对象进行GC回收时,则将可存活的对象复制到另一块内存当中,之后对原内存进行清除。但是该算法会牺牲掉内存中一半的内存。标记整理算法将对象整理到另一端并且将边界外的存活对象清除掉。分代收集算法在新生代中主要使用的是复制算法,而在老年代中,主要使用的是标记整理算法。...
2021-07-20 22:48:23
65
原创 2021-07-20
关于GC的学习以及理解Java中,存储对象的相关信息主要用的是栈与堆。这些都需要占用内存,一旦内存使用超出给定内存,便会报出内存溢出的错误,java中为了减少该错误出现的频率,从而出现了JavaGC处理器。如何确定一个对象需要回收在java中一个出现了两种方法,一种是引用计数法,还有一种就是可达性分析引用计数法当有一个地方引用了该对象时,该对象的引用计数便+1,引用失效则-1,任何时刻计数器都为0时,则该对象则不背引用。但在引用计数器中,可能会出现循环引用的问题。可达性分析根据“GC ROOT
2021-07-20 10:35:45
54
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人