JMM对数据竞争的定义

JMM 对数据竞争的定义

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

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

相关推荐
沐晓时光4 分钟前
C语言入门,深入理解指针(6)
c语言·开发语言
略略略咯咯7 分钟前
33333
开发语言·windows·python
垆边人似月.11 分钟前
第三篇:函数、文件与异常处理 / Functions, Files & Exception Handling
开发语言·python
云和数据.ChenGuang12 分钟前
项目打开后没有主类
开发语言·人工智能·langchain·1024程序员节
范同学~14 分钟前
项目添加水印
java·前端·javascript
鬼手点金15 分钟前
缓存作为架构约束
开发语言·前端·人工智能·python·microsoft·缓存·架构
快乐的韭菜根根17 分钟前
Slurm 指定 GPU 卡:`File=/dev/nvidiaX` 映射的坑与修复
java·服务器·网络
SEO_juper20 分钟前
Node.js 页面主题聚焦度检测:title 和正文各说各的,AI 也读不懂
开发语言·人工智能·node.js·seo·外贸独立站
软件技术NINI25 分钟前
基于PHP和MySQL的快递代收点管理系统的设计与实现
开发语言·javascript·数据库·mysql·毕业设计·php·毕设
酣大智30 分钟前
hibernate学习笔记
java·hibernate·session