java - JMM中的执行定义

标签 java java-memory-model

执行E由元组描述,包括:

P - a program

A - a set of actions

po - program order, which for each thread t, is a total order over all actions performed by t in A

so - synchronization order, which is a total order over all synchronization actions in A

W - a write-seen function, which for each read r in A, gives W(r), the write action seen by r in E.

V - a value-written function, which for each write w in A, gives V(w), the value written by w in E.

sw - synchronizes-with, a partial order over synchronization actions

hb - happens-before, a partial order over actions

这组 Action 是什么?该定义与特定线程t相关吗?或者覆盖程序启动的所有线程?

最佳答案

在元组 E 中,A 是由程序 P 的执行提交的所有线程间操作的集合.

关于java - JMM中的执行定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25972394/

相关文章:

Java - 我想在读取文件时忽略空行

java - 为什么 volatile 变量比普通同步更有效

java - 在同步块(synchronized block)内重新排序

java - Guava 中使用的无锁懒加载模式真的是线程安全的吗?

java - 将运行时 exec() OutputStream 打印到控制台

java - 如何修复错误 : JAVA_HOME is not defined correctly. 我们无法执行/usr/libexec/java_home/bin/java?

java - 共享内存(int)与java线程的同步

java - 为什么变量在没有同步的情况下对其他线程可见?

java - 文本自动更正的动态算法

java - 使用字段名称为对象设置字段(Java 反射)