JMM Java 内存模型

对于普通的变量的操作:创建变量,是在主内存中进行初始化。线程用到的变量,会先从主内存中拷贝 (read)出来,加载(load)到工作内存,然后引用(use)变量并运算赋值(assign)。然后存储(store)到工作内存,然后更新(write)掉原来的变量

普通变量的值在线程之间传递均需要通过主内存来完成。不同线程之间无法直接访问对方工作内存中的变量


lock:作用于主内存的变量,它把一个变量标识为一条线程独占的状态

unlock:作用于主内存的变量,它把一个处于锁定状态的变量释放出来,释放后的变量才可以被其他线程锁定。





猜你喜欢

转载自blog.csdn.net/sod5211314/article/details/80864310