JVM

type
Post
status
Published
date
Mar 22, 2026
slug
jvm
summary
tags
category
Java Web
icon
password
Place

JVM的体系结构

方法区:常量+静态变量都在这
栈:方法里里命名的基本数据类型和new出对象的引用(线程私有)
堆:new出来的对象都在这里,并且也是垃圾回收的地方
notion image
 

GC(Garbage Collection)

垃圾回收(Garbage Collection)是Java虚拟机(JVM)垃圾回收器提供的一种用于在空闲时间不定时回收无任何对象引用的对象占据的内存空间的一种机制。我们常说的GC指的是Full GC

根搜索算法(判断垃圾的算法)

从一组称为 "GC Roots" 的根对象出发,沿着引用链向下搜索。能被到达的对象是存活的,不能到达的就是垃圾。
notion image

堆内存

notion image

标记清除算法

最基础的算法,现在没有使用了,不过其他都是基于他改进的,
notion image

复制算法(Young)

优点:
✅ 无内存碎片 → 存活对象紧凑排列 ✅ 速度快 → 只需要复制少量存活对象(年轻代存活率低) ✅ 实现简单 → 直接整块清空,不用逐个释放 缺点:
❌ 浪费空间 → 始终有一个Survivor是空的(浪费10%) ❌ 存活对象多时效率低 → 复制太多对象会变慢(所以不适合老年代)

标记压缩清除算法

notion image

怎么移动的的呢?

 
notion image

JVM参数设置

需要的时候问大模型就行,没必要记
  • Xms1m -Xmx8m -XX:+HeapDumpOnOutOfMemoryError
  • Xms1m:设置初始堆内存为 1MB。
  • Xmx8m:设置最大堆内存为 8MB。
  • XX:+HeapDumpOnOutOfMemoryError:在内存溢出时生成 Heap Dump 文件。
上一篇
ReAct
下一篇
Agent Skills
Loading...