JMM对数据竞争的定义

JMM数据竞争的定义

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

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

相关推荐
枫叶丹413 小时前
【HarmonyOS 6.0】Network Kit 深度解析:TLS 认证全面支持国密证书
开发语言·网络安全·华为·harmonyos
2401_8512729913 小时前
编译器内建函数使用
开发语言·c++·算法
魑-魅-魍-魉13 小时前
Maven + Nexus 连接被拒绝问题速查手册
java·maven
caimouse13 小时前
Node.js的http服务
开发语言
不会写DN13 小时前
[特殊字符] JS Date 对象8大使用场景
开发语言·前端·javascript
蓝天星空13 小时前
java、python、C# 编程语言的区别,不同开发语言平台对比有什么优势和缺点
java·开发语言·python
骇客野人13 小时前
XXL-JOB集成到springBoot手册
java·数据库·spring boot
for_ever_love__13 小时前
Objective-C学习: OC方法调用的本质
开发语言·学习·ios·objective-c
Monkey-旭13 小时前
Java HTTP证书全用法详解:原理、配置、实战与问题排查
java·开发语言·http·证书·ssl
m0_7301151113 小时前
C++与Python混合编程实战
开发语言·c++·算法