采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
老师,您好!volitile 修饰一个map 当map很大的时候会不会导致OOM?
你好,volatile本质上不会额外消耗内存,只是强制代码读取主存里最新的值。如果因为map过大导致oom,那本质上是map的问题,而不是因为有volatile修饰。
老师,主存是什么?我一直对这个词很模糊,是JVM里的堆,栈?
主存是公共空间,基本可以类比为虚拟机模型中的堆,对象创建好了都是在主存里,所有线程都可以访问。 工作内存是线程的私有内存,只有本线程可以访问,如果线程要操作主存中的某个对象,必须从主存中拷贝到工作内存,在对工作内存中的副本进行操作,操作后再写入主存,而不能对主存的对象直接操作。 volatile主要是在某些场合需要强制读取主存里的数据。
老师,volatile在去主存获取新值之前不是强制刷新新值到主存吗?为什么不会造成OOM捏
登录后可查看更多问答,登录/注册
构建完整并发与高并发知识体系,倍增高薪面试成功率!
1.7k 1
1.1k 18
1.1k 15
3.5k 12
1.2k 12