GC基础

编程

GC垃圾回收算法:就是垃圾怎么找到

引用计数:一个对象被引用的次数,当是0的时候被回收;

根可达算法:以下四个就是根,程序启动的时候需要的对象,第一个main,静态变量。常量池、JNI指针这是个根,需要哪些对象,这四个不需要的方法就会被回收

GC垃圾回收机制:垃圾是怎么清除的

标记清除:第一次扫描把有用的标记出来,第二次扫描把可回收的标记一下,然后进行清除变为空闲,容易产生碎片

拷贝:把内存分为两块,把有用的copy到第二块,copy结束后把第一块内存全部清除,copy结束以后对象引用的地址发生改变,需要进行复制移动,不会产生碎片

标记压缩:有用的空间前移,没有碎片,扫描两次,第一次扫描标记有用的,第二次扫描把有用的前移,扫描并移动

JVM内存分代模型:新生代分为三个区域,老年代一个区域,对象分配到新生代的eden区,经历一次回收,没有被回收的,会copy到幸存者区,在幸存者区多次没有被回收就会进入老年代

以上是 GC基础 的全部内容, 来源链接: utcz.com/z/519123.html

回到顶部