概述
java虚拟机分为线程共享区和线程私有区,共享区包括堆,方法区,私有区域包括程序计数器,虚拟机栈,本地方法栈,共享区是所有线程共享,私有区是每个线程独自拥有,java内存模型可以理解成一套规则,这套规则规定了私有区和共享区之间如何进行数据交互,保证数据正确交互
八种操作
锁定
作用于主内存,把主内存的变量标记为某个线程独享
读取
把主内存中的变量读取出来
载入
把读取的变量存放到工作线程副本中
使用
工作内存中的值传递给线程进行使用
赋值
线程修改工作内存中的变量值
存储
把工作线程变量的副本读取出来
写入
把从工作线程中读取的变量副本更新到主内存
解锁
把主内存中处于锁定状态的变量解锁