202112-11 java 垃圾回收机制以及经典垃圾回收器详解 判断对象存活方法引用计数法:在对象中添加一个引用计数子,每当一个地方引用他时,计数器就加一,当引用失效时,计数器就减一。会有对象循环引用问题:objA.instance=objBobjB.instance=objAobjA有objB的引用objB有objA的引用,他们相互引用着对方。导致他们无法回收。可达性分析:从GCRoots根对象作为起点,根据引用关系向下搜索,如果对象可达,就说明对象存活,如果对象不可达,就说明对象可以被回收。GCRoots的... 继续阅读 >
202105-29 Java基础之垃圾回收机制详解 一、GC的作用进行内存管理C语言中的内存,申请内存之后需要手动释放;一旦忘记释放,就会发生内存泄漏!而Java语言中,申请内存后会由GC来释放内存空间,无需手动释放GC虽然代替了手动释放的操作,但是它也有局限性: 需要消耗更多的资源;没有手动释放那么及时;STW(StopTheWorld)会影响程序的执行效率二、GC主要回收哪些内存(1)堆:主要回收堆中的内存(2)方法区:需要回收(3)栈(包括本地方法栈和JVM虚拟机栈)... 继续阅读 >