文章目录
视频资源地址B站 https://www.bilibili.com/video/av70549061
笔记资源地址https://nyimac.gitee.io/
我的笔记48-49.判断垃圾-引用计数
如何判断一个对象可以被回收? 两种算法:引用计数法与可达分析算法。
其中引用计数法,就是当一个对象被引用就计数加一,不被引用了就计数减一。这种方案有弊端:
弊端:循环引用时,两个对象的计数都为1,导致两个对象都无法被释放。
早期的python虚拟机用了这种方法。java使用的是可达分析法。
50.可达分析
可达分析法首先要确认一系列的根对象。根对象是那些肯定不能被当成垃圾的对象。在执行垃圾回收之前,首先对堆进行扫描,看堆中的对象是否被这些根对象引用,如果是就不会被回收,反之,如果没有被根对象直接或者间接的应用,那么这个对象就可以作为垃圾,被回收掉。
51.可达分析-根对象
使用MAT工具来可视化堆,帮助我们找到gc root对象都有哪些。
标签:对象,笔记,计数,引用,JVM,回收,垃圾 From: https://blog.51cto.com/u_11301546/5875170