标签:
JMM
1、内存模型的抽象。
本地内存是JMM的一个抽象概念,并不是真实存在,它涵盖了缓存,写缓冲区,寄存器以及其他的硬件和编译器优化。
2、内存可见性问题?
?
3、重排序
编译器优化重排序 | 编译器再不改变单线程程序语义的前提下,可重新安排语句执行顺序。 |
指令级并行重排序 | 现代处理器采用了指令并行技术,来将多条指令重叠执行,如果不存在数据依赖性,处理器可以改变语句对应机器指令的执行顺序。 |
内存系统重排序 | 由于处理器使用缓存和读/写缓冲区,这使得加载和存储操作看上去可能是乱序执行。 |
4、内存屏障指令。
5、happens-before
6、顺序一致性
7、volatile 变量
volatile 变量
volatile的读-写内存语义
8、锁(LOCK)
9、final 域
还在学习中,还望各位多多指点指点。
标签:
原文地址:http://www.cnblogs.com/outpointexception/p/4606433.html