读书笔记,读完思考现在的代码是怎么进行运行的,运行的过程中都做了哪些操作,以后优化代码要考虑的
关键字
重排序、数据依赖性、控制依赖性、顺序一致性(sequentially consistent)、数据的内存可见性、happen-before、as-if-serial、单线程程序、内存屏障、消息传递模型、共享内存模型
数据竞争
程序未正确同步
常用同步原语
synchronized volatile final
顺序一致性内存模型
TSO
PSO
RMO
POWER PC
关键思想
在计算机中,软件技术和硬件技术有一个共同的目标,在不改变程序执行结果的前提下,尽可能的提高开发并行度、
对于会改变程序结果的重排序,jmm要求编译器和处理器禁止重排序。否则,相反。