锁可以让临界区互斥执行
锁的内存语义
锁是Java并发编程中重要的同步机制. 锁除了可以让临界区互斥执行外,还可以让释放锁的线程向获取同一个锁的线程发送消息
线程释放锁时,JMM会把该线程对应的本地内存中的共享变量刷新到内存中.
线程获取锁时,JMM会把该线程对应的本地内存置为无效.从而使得临界区代码必须从主内存中读取共享变量
锁获取与volatile读有相同的内存语义
文章链接 https://fangzongzhou.github.io/2020/10/19/计算机/技术栈/Java/并发编程/锁/