内存语义是啥意思。
1
q397064399 2017-12-24 17:48:29 +08:00 1
java volatile
如果是这个的话, 现代计算机 CPU 每个核心有 L1 Cache L2 Cache 然后才是主存, volatile 的话 应该指的是讲 值变化后 会立即写入 主存 RAM 然后其它 CPU 核心 是立即可见的话 描述的不是很清楚,大概意识 应该这样 |
2
palmers 2017-12-24 20:18:25 +08:00
我的理解是 java 内存模型
|
3
ipwx 2017-12-24 21:17:07 +08:00
@q397064399 volatile 还管寄存器的问题吧。volatile 禁止使用寄存器缓存某个变量。如果不加的话,不用多核,多线程可能就有问题。
|
4
BarbaraBear OP @q397064399 相当于是一个语法或者一个关键字在内存里面是怎么存储的,可以这样理解么
|
5
q397064399 2017-12-25 07:12:40 +08:00
@ipwx #3 对的,寄存器,,寄存器貌似也是每个核心独立的,
|
6
dumplinger 2017-12-25 09:38:09 +08:00
就是 Java 的内存模型,或者说 volatile,synchronize,atomic,lock 之类的在 JVM 中的实现原则( JVM 遇到这些关键字的时候会处理)。
|