博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JVM深入理解——总结1
阅读量:5119 次
发布时间:2019-06-13

本文共 384 字,大约阅读时间需要 1 分钟。

JVM内存模型

 


一.内存模型

堆和方法区是所有线程共享的,而虚拟机栈、本地方法栈和程序计数器是线程私有的。

程序计数器:相当于程序指针,指向当前执行的java字节码的位置。是java内存中唯一不存在内存溢出和栈溢出的地方。

虚拟机栈:执行java方法时,方法的调用与返回对应于栈帧的入栈与出栈。

本地方法栈:与虚拟机栈类似,只是调用本地方法时才用本地方法栈。当执行本地方法时,程序计数器为空。

堆:对象实例都在该区域分配内存,GC主要在该区域收集

方法区:该区域主要存储对象的类型信息

 

二.对象访问

1.句柄方式访问对象

java堆中划分出一块区域作为句柄池,reference中存储的就是对象的句柄地址

2.指针方式访问

reference中直接存储的就是对象地址

 

转载于:https://www.cnblogs.com/hwu2014/p/4505466.html

你可能感兴趣的文章
Yii2 Lesson - 03 Forms in Yii
查看>>
Python IO模型
查看>>
Ugly Windows
查看>>
DataGridView的行的字体颜色变化
查看>>
Java再学习——关于ConcurrentHashMap
查看>>
如何处理Win10电脑黑屏后出现代码0xc0000225的错误?
查看>>
局域网内手机访问电脑网站注意几点
查看>>
[Serializable]的应用--注册码的生成,加密和验证
查看>>
Day19内容回顾
查看>>
第七次作业
查看>>
SpringBoot项目打包
查看>>
Linux操作系统 和 Windows操作系统 的区别
查看>>
《QQ欢乐斗地主》山寨版
查看>>
文件流的使用以及序列化和反序列化的方法使用
查看>>
Android-多线程AsyncTask
查看>>
第一个Spring冲刺周期团队进展报告
查看>>
红黑树 c++ 实现
查看>>
Android 获取网络链接类型
查看>>
linux中启动与终止lnmp的脚本
查看>>
gdb中信号的处理[转]
查看>>