在每次后续写入之前是否发生了对易失性字段的读取?

时间:2014-01-25 07:23:24

标签: java volatile

Java Concurrency in Practice(在JMM章节中) 易失性变量规则:对每个后续读取相同字段之前发生对易失性字段的写入

我的问题是:在同一个字段上的任何/每个后续写入之前发生对易失性字段的读取吗?

1 个答案:

答案 0 :(得分:1)

理论上它是一种单向关系。事先发生关系的详尽列表在JLS #17.4.5中定义,仅包含hb(volatile write, volatile read)

然而,它可能是由JVM以两种方式实现的(热点就是这种情况)。