JMM 内存问题
问题描述
- JMM:线程对共享变量的所有操作都必须在自己的工作内存中进行,不能直接在主内存中读写;
- 这是否意味着所有变量都在主内存中有一份,在各个工作内存中又有一份,变量真实所占用空间只有一半
我期待的结果是什么?
- 得到给java程序分配8G,是否只能使用大概4G,因为工作内存中有拷贝,如果不是,真实情况是怎么样的
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我理解应该是动态分配的,也就是只有需要在多线程环境下使用的变量才有一份拷贝。所以会有冗余,但不是只能使用一半这么夸张。