通过ThreadLocal源码和相关问题专题学习…
我们知道为了提高并行度,优化程序性能,编译器和处理器会对代码进行指令重排序。但为了不改变程序的执行结果,尽可能地提高程序执行的并行度,我们需要了解as-if-serial规则和happens-before规则。
Java 里面,最基本的互斥同步手段就是 synchronized 关键字,这是一种块结构( Block Structured )的同步语法。还有就是 Java 类库中新提供了 java. util.concurrent 包,其中的 java.util.concurrent.locks.Lock 接口便成了 Java 另一 全新的互斥 同步手段。
LockSupport
的 park()
和 unpark()
方法wait()
和notify()
方法