请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

只有基本类型会有可见性问题吗

老师,有两个问题请教一下。
1.这里给的例子都是基本类型,基本类型是存放在jvm的栈里,是每个线程私有的,然后工作缓存是每个线程私有的,所以工作缓存是放在栈里?
2.如果是对象的实例(存放在堆),堆是一个线程之间共享的区域,是否不存在可见性问题?若存在可见性问题,那实例的缓存是存放在栈还是堆?

正在回答 回答被采纳积分+3

1回答

悟空 2021-01-26 15:04:04

无论堆栈,都有可见性问题。

下图写了工作缓存和JVM内存的关系:

https://img1.sycdn.imooc.com//szimg/600fbed10938448808170384.jpg

详见:http://tutorials.jenkov.com/java-concurrency/java-memory-model.html#javas-logic-memory-model

0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信