线程的运行模型
主内存:
所有线程之间共享,所有变量都存放在主内存中。
线程与与线程无法通信
线程与与线程无法通信,只能通过主内存,当线程想改变主内存中的值时,会将主内存的值copy一份,放入工作内存中,然后把值改变替换,替换后,将值返回到主内存中,然后将主内存的值给覆盖,这样就完成了值的修改
具体通信流程:
通信步骤:
1.read(读取):将主内存中的变量值读取
2.load(加载):将读取的值加载到线程的工作内存的变量副本中
3.user(使用):将加载的值进行执行引擎
4.assing(赋值):将执行引擎后的值进行赋值操作
5.store(储存):把工作内存赋值改变的变量传送到主内存中
6.write(写入):把store操作中的一个工作内存变量传送到主内存中