Java的内存模型分为主内存和工作内存:
主内存是所有线程共享的,工作内存是每个线程独有的。是主内存中对象的拷贝,对工作内存的读取和写入最后都要同步到主内存中去;
Java虚拟机规范屏蔽了Java内存模型来屏蔽不同操作系统的硬件和操作系统引起的差异,达到跨平台的内存访问效果
为了获得更好的执行性能,Java 内存模型没有限制执行引擎使用处理器的特定缓存器或缓存来和主内存(可以和 RAM类比,但是是虚拟机内存的一部分)交互,工作内存(可类比高速缓存,也是虚拟机内存的一部分)为线程私有。
工作内存和主内存的划分和 Java 堆,栈,方法区的划分不同,两者基本没有关系,如果勉强对应,则主内存可理 解为堆中实例数据部分,工作内存则对应栈中部分区域;
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。