每日一博 | 解读 Java 内存模型中 Happens-Before 的 8 个原则
摘要:本文我们就结合案例程序来说明Java内存模型中的Happens-Before原则。 本文分享自华为云社区《【高并发】一文秒懂Happens-Before原则》,作者: 冰 河。 在正式介绍Happens-Before原则之前,我们先来看一段代码。 【示例一】 class VolatileExample { int x = 0; volatile boolean v = false; public void writer() { x = 42; v = true; } public void reader() { if (v == true) { //x的值是多少呢? } } } 以上示例来源于:http://www.cs.umd.edu/~pugh/java/memoryModel/jsr-133-faq.html#finalWrong 这里,假设线程A执行writer()方法,按照volatile会将v=true写入内存;线程B执行reader()方法,按照volatile,线程B会从内存中读取变量v,如果线程B读取到的变量v为true,那么,此时的变量...






