走进HotSpot和堆
三种JVM
- Sun公司 HotSpot
Java Hotspot(TM) 64-Bit server VM (build 25.181-b13,mixed mode)
- BEA
JRockit
- IBM
J9 VM
我们学习都是: Hotspot
堆
Heap,一个JVM只有一个堆内存,堆内存的大小是可以调节的。
类加载器读取了类文件后,一般会把什么东西放到堆中?类,方法,常量,变量~,保存我们所有引用类型的真实对象;
堆内存中还要细分为三个区域:
- 新生区(伊甸园区)Young/New
- 养老区old
- 永久区Perm
GC垃圾回收,主要是在伊甸园区和养老区~
假设内存满了,OOM,堆内存不够!java.lang.outOfMemoryError: Java heap space
在JDK8以后,永久存储区改了个名字(元空间);
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?