java内存模型规定和指引java程序在不同的内存架构,cpu和操作系统间有确定性的行为。他在多线程的情况下尤其重要。java内存模型对一个线程所做的变动能被其他线程可见提供了保证,他们之间是线性发生关系。这个关系定义了一些规则让程序员在并发编程时思路清晰。比如线性发生关系确保了:
线程内的代码能够先后顺序执行,这被称为程序的次序规则。
对于同一个锁,一个解锁操作一定要发生在时间上后发生的另一个锁定操作之前(先解锁才能锁定 哎呦我去),也叫做管理锁定规则。
前一个对volatile的写操作在后一个volatile读操作之前(先写再读),也叫做volatile变量规则
一个线程任何操作也必须在这个 线程start()调用之后,也叫做线程启动规则
一个线程的所有操作都会在线程终止之前,线程终止规则。
一个对象的终结操作必须在这个对象构造完成之后,也叫对象终结规则。
可传递性
java高并发实践
Java 内存模型
最新推荐文章于 2023-07-21 11:19:41 发布