一、对象引用
1、引用计数器算法不能解决对象相互引用带来的无法释放的问题,大多数jvm采用根搜索算法。
2、引用分为Strong Reference,Soft Reference,Weak Reference,Phantom Reference
强引用是我们最常用的如A a = new A();
软引用SoftReference,是在内存不够的情况下,即使没有达到可回收的标准也强制回收;
弱引用是在每次垃圾回收是都强制被回收;
虚引用,用的很少,目的是为了在GC是获得一个通知而已。
二、垃圾收集算法
1、老年代采用“标记清理”或者“标记整理”算法。大概的过程是标记出可以清理的内存块,将内存清理出来。“标记整理”算法不是清理内存块,而是将存活的内存块向一端移动,这样能减少内存碎片的问题。这两种算法适合对象存活率较高的内存区域,所以一般放在老年代使用。
2、新生代一般采用“复制算法”。大概的过程是,将内存划分为Eden,Survivor区,将Survivor区又分为两块大小一样的分区(From Survivor和To Survivor)。运行时某一块Survivor空着,每次回收时将存活的对象完整的复制到这块Survivor分区中。该算法适合对象存活率低的内存区域使用。
三、垃圾回收器
待续
分享到:
相关推荐
本文档可以作为学习JVM GC的工具书所使用,对于想深入学习JVM GC原理的同学,这一本书就足够了。因为本文档是作者花费数月时间,查阅GC相关的国内外众多资料并加以思路清晰的条目化而形成。因为篇幅所限,可能有部分...
jvmgc过程介绍(jpg)
JVM GC垃圾回收.pdf
JvmGC收集器 在 Java 虚拟机中,GC(Garbage Collection)收集器是 JVM 的一个重要组件,它负责回收 Java 应用程序中的垃圾对象,从而维持应用程序的性能和可靠性。JvmGC 收集器是 JVM 中的三个主要 GC 收集器之一...
JVM(Java Virtual Machine)的垃圾收集器(GC,Garbage Collector)扮演着核心角色,负责自动管理应用程序的内存,防止内存泄漏和性能问题。MAT(Memory Analyzer Tool)是由Eclipse基金会提供的一个强大的分析工具...
Java虚拟机(JVM)的垃圾收集(Garbage Collection, GC)是Java程序运行时管理内存的关键机制。它自动地识别并释放不再使用的对象,从而避免了程序员手动管理内存可能导致的内存泄漏问题。理解JVM的GC对于优化Java...
Java虚拟机(JVM)是Java程序运行的基础,它的垃圾收集器(GC)是自动管理内存的核心机制。在Java应用程序中,尤其是对于大型系统或高并发环境,进行JVM GC调优是提升性能、减少系统停顿时间的关键步骤。"用于测试...
【标题】"hpjmeter jvm gc监控工具"是一个专门用于监视Java虚拟机(JVM)内存管理和垃圾收集(GC)行为的实用程序。HPjmeter由惠普公司开发,它提供了一种可视化的方式来理解JVM性能,特别是与垃圾收集相关的活动。...
### IBM JVM GC 技术文档知识点解析 #### 一、简介 IBM JVM(Java Virtual Machine)垃圾回收(Garbage Collection, GC)技术文档是针对IBM Developer Kit and Runtime Environment, Java 2 Technology Edition ...
HotSpot虚拟机中的垃圾回收机制(GC)是JVM内存管理的核心部分。它包括多种策略,其中最常见的是Young Generation Collection(YGC,又称Minor GC)和Full GC(FGC)。YGC负责回收新生代内存中的对象,而FGC则会回收...
Java虚拟机(JVM)垃圾回收(GC)是Java语言内存管理的核心机制,负责回收Java堆内存中不再使用的对象所占的空间。在JVM GC原理和heapsize调优的学习和实践过程中,需要理解多个关键概念和操作步骤,下面详细展开: ...
"jvmgc日志分析工具"专为解析和可视化JVM生成的GC日志而设计,帮助开发者识别内存瓶颈,调整内存设置,以及诊断可能的性能问题。 GC日志是JVM在运行过程中记录的关于垃圾收集活动的详细信息,包括垃圾收集的起始...
java jvm GC和GC Tuning详解
Java 应用程序的JVM(Java虚拟机)性能优化是一个关键领域,而垃圾收集(GC)作为内存管理的一部分,其频率对系统性能有直接影响。GC的频率反映了系统的内存使用情况和健康状况。通常,GC分为两种主要类型:Scavenge...
### Sun Hotspot V1.6.0 JVM GC详解 #### 一、JVM结构与GC基础知识 ##### 1.1 JVM内存结构概述 Java虚拟机(JVM)内存主要分为以下几个部分: - **程序计数器(PC Register)**:记录当前线程所执行的字节码指令...
一次完整的JVM GC的流程分析,描述了Full GC的原因入口以及Minor GC
Java虚拟机(JVM)是Java程序运行的基础,它的核心功能之一是垃圾收集(Garbage Collection, GC),这是Java语言的一大优势,但也因为其复杂性成为性能优化的关键环节。JVM调优通常涉及到内存配置、GC策略选择以及...
对gc日志进行统计分析,使用命令:java -jar gcviewer-1.3x.jar gc.log summary.csv [chart.png] [-t PLAIN|CSV|CSV_TS|SIMPLE|SUMMARY]