问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

jvm中线程本地内存是真实存在的,还是一个抽象概念

发布网友 发布时间:2022-04-23 13:47

我来回答

2个回答

热心网友 时间:2023-09-18 20:52

jvm内存模型:Java代码是运行在Java虚拟机之上的,由Java虚拟机通过解释执行(解释器)或编译执行(即时编译器)来完成,故Java内存模型,也就是指Java虚拟机的运行时内存模型。

运行时内存模型,分为线程私有和共享数据区两大类,其中线程私有的数据区包含程序计数器、虚拟机栈、本地方法区,所有线程共享的数据区包含Java堆、方法区,在方法区内有一个常量池。java运行时的内存模型图,如下:

从图中,可知内存分为线程私有和共享两大类:

(1)线程私有区,包含以下3类:
程序计数器,记录正在执行的虚拟机字节码的地址;
虚拟机栈:方法执行的内存区,每个方法执行时会在虚拟机栈中创建栈帧;
本地方法栈:虚拟机的Native方法执行的内存区;

(2)线程共享区,包含以下2类
Java堆:对象分配内存的区域;
方法区:存放类信息、常量、静态变量、编译器编译后的代码等数据;
常量池:存放编译器生成的各种字面量和符号引用,是方法区的一部分。

楼主提到的Java栈,一般而言是指图中的虚拟机栈,在代码中的方法调用过程中,往往需要从一个方法跳转到另一个方法,执行完再返回,那么在跳转之前需要在当前方法的基本信息压入栈中保存再跳转。

三、关于寄存器的问题

对于java最常用的虚拟机,sun公司提供的hotspot虚拟机,是基于栈的虚拟机;而对于android的虚拟机,则采用google提供的dalvik,art两种虚拟机,在android 5.0以后便默认采用art虚拟机,这是基于寄存器的虚拟机。 楼主问的是jvm(即java vm),这是基于栈的虚拟机。那么关于虚拟机栈,这块内存的内容,我们再进一步详细分析,如下图:

可以看到,在虚拟机栈有一帧帧的 栈帧组成,而栈帧包含局部变量表,操作栈等子项,那么线程在运行的时候,代码在运行时,是通过程序计数器不断执行下一条指令。真正指令运算等操作时通过控制操作栈的操作数入栈和出栈,将操作数在局部变量表和操作栈之间转移。

热心网友 时间:2023-09-18 20:52

是一个抽象的概念,并不是真实存在的,涵盖了缓存、写缓冲区、寄存器以及其他的硬件和编译器优化,每一个线程都有一个本地内存,其中有主内存中对象的拷贝值,
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
不干胶印刷设备多少钱一套 小型不干胶印刷机价格 什么是走水运 水路的特点是什么 疯狂僵尸机游戏怎么玩,植物大战僵尸高清版怎么玩 植物大战僵尸2 植物大战僵尸2戴夫最好的朋友是谁? 怎么下载疯狂的戴夫游戏 游戏下载地址 小红书数据分析工具推荐 三分钟做好一张小红书封面,不同平台超好用的高效率工具你造吗_百度知... 网球王子的剧场版都有哪些啊 网球王子剧场版:英国式庭球城决战DVD情报 在java本地方法调用中,jni.h这个文件起到的作用是什么?它和jniEvn是什么关系?为什么必须要引入jni.h... 怎样理解java native方法 Java栈和本地方法栈方法调用栈,这些都是什么? java中的本地方法 Java的方法区和本地方法区有何不同?什么是Native Method? 在java中本地方法是什么意思? JAVA本地方法详解,什么是JAVA本地方法 jvm在调用native本地方法时,本地方法是由谁执行的? 苹果xr用久了声音变小了是什么原因? 我的扶桑花肥上多了换了花盆为什么还是没见好转 需要换花土是养了一年的扶桑。 扶桑花怎样养? 电脑能播放视频但没有声音怎么回事? 前两天我把扶桑移植到新的花盆 大夏天会不会死啊? 电脑播放视频时候没声音,怎么办? 为什么买的扶桑花都是黄胶泥土,换盆也不活,几天后奄奄一息了? 我的电脑音响听音乐有声音 可看视频却没有声音 请问是怎么回事呢 为什么我的电脑播放视频时没有声音? 二年的扶桑花换盆后叶子变黄了为什么? 扶桑花是哪个国家的国花? Java如何调用本地dll库里面的方法 Java JVM怎么学习啊?从哪方面入手 JVM原理是什么? 2016年,Java还有必要使用本地方法以提高性能吗 native的JVM与Native Method java怎么获取本地文件路径 住街边,隔音玻璃贴膜有用吗,可以做到基本静音吗 玻璃贴膜能增强强度?玻璃在静态下的强度是多少?谢谢! 无胶电静贴膜可以用在淋浴玻璃隔断吗?它与带粘胶玻璃贴膜哪个更合适呢?是贴在里面还是外面呢? 苹果手机屏幕有时会点不动? 有没有什么东西是透明的,贴在玻璃上隔音效果又比较好的东西 苹果手机触摸屏有时候管用有时候不管用怎么回事 受不了噪音,想换中空玻璃窗,或者隔音贴膜? 苹果手机屏幕时灵时不灵是怎么回事 玻璃怎么隔音 请问建军节是几月几日呢? 建筑玻璃贴膜的功能 苹果手机屏幕时好时坏怎么办?如何解决? 玻璃幕墙贴膜施工方法? 手机玻璃钢化膜粘面不干静怎么办