JMM对数据竞争的定义

JMM数据竞争的定义

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

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

相关推荐
两个蝴蝶飞1 小时前
Java量化系列(四):实现自选股票维护功能
java·经验分享
半桶水专家3 小时前
go语言中的结构体嵌入详解
开发语言·后端·golang
短剑重铸之日3 小时前
7天读懂MySQL|Day 5:执行引擎与SQL优化
java·数据库·sql·mysql·架构
酒九鸠玖3 小时前
Java--多线程
java
Dreamboat-L3 小时前
云服务器上部署nginx
java·服务器·nginx
长安er3 小时前
LeetCode215/347/295 堆相关理论与题目
java·数据结构·算法·leetcode·
在屏幕前出油4 小时前
二、Python面向对象编程基础——理解self
开发语言·python
阿方索4 小时前
python文件与数据格式化
开发语言·python
cici158744 小时前
C#实现三菱PLC通信
java·网络·c#
k***92165 小时前
【C++】继承和多态扩展学习
java·c++·学习