JMM对数据竞争的定义

JMM数据竞争的定义

Java内存模型规范对数据竞争的定义如下
在一个线程中一个变量,在另一个线程同一个变量,而且写和读没有通过同步来排序
如果一个多线程程序能正确同步,这个程序将是一个没有数据竞争的程序。
当程序正确同步时,就可能会存在数据竞争。当代码中包含数据竞争时,程序的执行往往产生违反直觉的结果(就是算错了,这里说的委婉了)。

-----------------------------------------------------------------------------摘自 书名:Java并发编程的艺术 作者:方腾飞;魏鹏;程晓明

相关推荐
自在如风。3 分钟前
MyBatis-Plus 使用技巧
java·mybatis·mybatis-plus
XORE9512 分钟前
IDEA Generate POJOs.groovy 踩坑小计 | 生成实体 |groovy报错
java·spring·intellij-idea
heart000_123 分钟前
基于SpringBoot的智能问诊系统设计与隐私保护策略
java·spring boot·后端
半聋半瞎29 分钟前
【进程和线程】(面试高频考点)
java·jvm·面试
帅弟15030 分钟前
Day4 C语言与画面显示练习
c语言·开发语言
qhs157333 分钟前
Kotlin字符串操作在Android开发中的应用示例
android·开发语言·kotlin
功德+n41 分钟前
在 Maven 中使用 <scope> 元素:全面指南
java·maven
失业写写八股文1 小时前
Java类加载阶段深度解析:三步走全流程详解
java
yyueshen1 小时前
单例模式,有必要用volatile么?
java·单例模式·设计模式
一条闲鱼_mytube1 小时前
[Kubernetes] 7控制平面组件
java·平面·kubernetes