美文网首页
JVM-垃圾、垃圾回收算法(1)

JVM-垃圾、垃圾回收算法(1)

作者: 心無旁騖丶 | 来源:发表于2021-02-15 15:02 被阅读0次
什么是垃圾?

没有引用指向的任何对象都叫做垃圾。

如何寻找垃圾?
  1. 引用计数(reference count)


    image.png

    有几个引用指向某个对象,引用计数就是几。
    如果引用计数为0,那么这个对象会被回收。

但是引用计数不是万能的,循环引用问题会导致没写垃圾不会被回收。


image.png

在对象被循环引用时,引用计数均不为0,但并没有任何引用指向这个整体。

  1. 根可达算法(Root Searching)


    image.png

    哪些是根对象?

  • 线程栈变量
    java程序从main方法开始执行,会起一个线程,这个线程会有线程栈,从main栈针开始的对象。
  • 静态变量
    class在加载到内存后,会对静态变量进行初始化,静态变量能够访问的到的对象。
  • 常量池
    某一个class会用到其他class的对象。
  • JNI指针
    java调用的C/C++本地方法所用到的对象。

第二部分传送门:JVM-垃圾、垃圾回收算法(2)

相关文章

  • JVM-垃圾、垃圾回收算法(1)

    什么是垃圾? 没有引用指向的任何对象都叫做垃圾。 如何寻找垃圾? 引用计数(reference count)ima...

  • JVM垃圾回收

    GC垃圾回收流程 垃圾收集算法 垃圾回收算法 引用类型 垃圾回收的时机 1.垃圾收集算法 (1).引用计数算法含义...

  • 垃圾回收算法、回收机制与总结 ---JVM

    垃圾回收算法、回收机制与总结 ---JVM 一、垃圾回收算法 1.标记清除 标记--清除算法将垃圾回收分为两个阶段...

  • JVM-垃圾、垃圾回收算法(2)

    GC常用算法 1. 标记清除(Mark-Sweep) 算法相对简单 在存活对象较多的情况,下效率较高。 两次扫描,...

  • JVM-垃圾回收算法

    一、对象已死吗? JVM中判断对象是否存活有两种算法:引用计数法、可达性分析算法。 1.引用计数法(Referen...

  • JVM-垃圾回收算法

    一、引用计数法 1.原理 统计每一个对象被引用的次数,如果引用次数为0就释放对象。能立即回收无用内存。 2.实现 ...

  • JVM(七)垃圾收集器

    1. 垃圾收集器概述 1.1 垃圾回收器与垃圾回收算法 垃圾回收算法分类两类,第一类算法判断对象生死算法,如引用计...

  • JVM垃圾回收算法

    Java基础:JVM垃圾回收算法 [toc] 参考:Java基础:JVM垃圾回收算法图解JVM垃圾回收算法 总结:...

  • JVM调优之垃圾定位、垃圾回收算法、垃圾处理器对比

    谈垃圾回收器之前,要先讲讲垃圾回收算法,以及JVM对垃圾的认定策略,JVM垃圾回收器是垃圾回收算法的具体实现,了解...

  • ZGC设计与实现-出版

    目录如下:前言第1章垃圾回收器概述 11.1 垃圾回收算法 21.2 JVM垃圾回收器 21.2.1 串行回收 3...

网友评论

      本文标题:JVM-垃圾、垃圾回收算法(1)

      本文链接:https://www.haomeiwen.com/subject/pxbpxltx.html