热闹 热闹 标签 标签

java 内存模型

huwhy
评论(0) 浏览(879)

Java内存模型

定义了程序中各变量的访问规则, 此处的变量是指实例的实例字段、静态字段、对象等; PS: 方法参数 与 局部变更为线程私有的,不会被共享,不在此列

内存模型 概念 1、在内存模型中的三个对象: 线程、主内存 、工作内存 2、规定程序的所有变量都放在主内存中,线程的所用到的变量都从主存中拷贝副本放到线程的工作内存 3、线程所有对变量的读写操作都在工作内存中进行,不能直接读写主内存中的变量 4、线程之间不能访问对方的工作内存中的变量,线程间变量传递只能通过主存进行

工作内存与主内存交互协议

1、lock 作用于主存 变量线程独占 2、unlock 作用于主存 释放独占 3、read 作用于主存 把一个变量值读到工作内存 4、load 作用于工作内存 把read计到的变量值 载入到工作内存 5、use 作用于工作内存 把工作内存变量值交给执行引擎 6、assign 作用于工作内存 把从执行引擎接收到的值赋给工作内存中的变量 7、store 作用于工作内存 把工作内存中的变量的值传递给主存 8、write 作用于主存 把工作内存传递来的值写入主存

0