java中的内存模型划分是这样的嘛?

我的理解jvm是一个进程,那么他就有自己的虚拟地址空间,那么所谓的jvm划分出来的堆区,栈区就指的是虚拟地址空间上面的那些堆区,栈区之类的吧?那么主内存其实就是一个共享变... 我的理解jvm是一个进程,那么他就有自己的虚拟地址空间,那么所谓的jvm划分出来的堆区,栈区就指的是虚拟地址空间上面的那些堆区,栈区之类的吧?那么主内存其实就是一个共享变量存放的地方(泛指,这类区域都可以称为主内存),工作内存可以理解为栈区这块区域(线程私有),线程对于主内存中的变量不能直接操作,需要读取到自己的工作内存中去进行操作。是这样的嘛?求大神指点迷津 展开
 我来答
百度网友a4f443af5
2020-04-02 · TA获得超过668个赞
知道小有建树答主
回答量:372
采纳率:54%
帮助的人:72.4万
展开全部

给你推荐本书 <Java虚拟机规范中文版>

  1. jvm会有一个区域用于存放程序元数据: 线程/对象结构/安全/内存状态, java程序可以通过api访问这些数据.

  2. java程序本身产生的变量/对象保存在堆上, 每个线程都可以访问, 由此产生了<线程安全>编程方法论.

  3. "线程变量" 的实现方法是一个以线程id为主键的map, 其实现可以看java源代码.

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式