My Blogs

Posts tagged with "Java"

JVM 内存模型(JMM) 三大特性

Tags: JVM , JMM , Java , 内存模型

Published 2021年10月19日 21:59 by james

特性

原子性

原子性:指一个操作是不可中断的,即使是多个线程一起执行的时候,一个操作一旦开始,就不会被其他线程干扰

比如,对于一个静态全局变量int i,两个线程同时对它赋值,线程A 给他赋值 1,线程 B 给它赋值为 -1,。那么不管这两个线程以何种方式,何种步调工作,i的值要么是1,要么是-1,线程A和线程B之间是没有干扰的。这就是原子性的一个特点,不可被中断。

原子性表示一步操作执行过程中不允许其他操作的出现,直到该操作的完成。

在多线程环境下,原子性表现在,当前线程执行字节码的过程中不允许切换到其他线程,去执行其他的字节码。

在JMM抽象模型中定义了8中原子操作。