JVM 运行时数据区
2018-01-04 09:26:10 0 举报
JVM 运行时数据区
作者其他创作
大纲/内容
tosurvior
临时数据从存储区域
young(新生代)
栈帧
方法返回地址
虚拟机栈
int
reference
内存泄露: 对象引用的地址所指向的对象已经会回收了,但是这个对象还在引用这,JVM没有办法回收这个内存,如果这种对象很多,就会难以释放内存,发生内存泄露。
动态链接
内存溢出:通常是方法区或者堆内存JVM可以分配的内存空间满了,内存不够了,会发生内存溢出。
栈帧(栈顶,当前活跃的栈)(stackframe)
入栈
出栈
每个方法执行的时候都会创建一个虚拟机栈线程私有的:生命周期和线程保持同步
perm(永久代)
局部变量表
1
记录线程的情况,记录当前运行指令的,线程私有的
old(老年代)
调用本地方法
操作数栈
堆内存模型
0
int a
ObjectX
正常退出和异常返回
栈帧的内容
本地方法栈
testB方法
引用常量池
JVM 运行时数据区(启动的时候分配内存)
...
附加信息
edem
Fromsurvior
App.class
静态testA方法:
堆内存被所有的线程共享的内存
程序计数器
int b
方法区(存在永久代)out of memory error存放:类的信息常量静态变量编译后的代码
0 条评论
下一页