一、Java内存模型概念
线程通信
消息传递
重排序
顺序一致性
Happens-Before
As-If-Serial
二、线程之间的通信
并发种的两个关键问题:线程之间的通信和同步。
1.两种线程之间的通信机制
共享内存:线程之间共享程序的公共状态,线程之间通过写-读内存中的公共状态来隐式进行通信。例:共享对象。
消息传递:线程之间没有公共状态,线程之间通过发送消息来显式进行通信。例:wait()和notify()。
2.Java的并发采用共享内存模型
三、Java内存模型(jmm)
1.多核并发缓存架构
2.java线程的内存模型
3.jmm数据原子操作
4.jmm缓存不一致问题
1)解决方案
2)具体流程
四、Volatile可见性底层实现原理
1.volatile缓存可见性实现原理
2.lock和unlock,锁粒度小,效率高。