【问题标题】:Is a read to a volatile field happens before every subsequent write? [duplicate]对 volatile 字段的读取是否发生在每次后续写入之前? [复制]
【发布时间】:2014-01-25 07:23:23
【问题描述】:

Java 并发实践说(在 JMM 章节中)
易失性变量规则:对易失性字段的写入发生在对同一字段的每次后续读取之前

我的问题是:对 volatile 字段的读取发生在对同一字段的任何/每次后续写入之前??

【问题讨论】:

    标签: java volatile


    【解决方案1】:

    理论上这是一种单向关系。在JLS #17.4.5 中定义了发生前关系的详尽列表,并且仅包括hb(volatile write, volatile read)

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-06-18
      • 1970-01-01
      • 2020-06-06
      • 2023-03-22
      • 1970-01-01
      • 2015-03-12
      • 2015-08-09
      • 1970-01-01
      相关资源
      最近更新 更多