2.Synchronized
Java · 2 篇笔记
- 6.2 2.Synchronizedhistorical
1. 是什么 Java 中悲观锁的一种实现,相比于 volatile 是重量级锁,可以保证原子性、有序性、可见性 - 重量级 会引起上下文切换(会造成线程阻塞) - 原子性 synchronized 方法、synchronized 代码块被视作原子的 - 有序性 线程 A 对于锁 X 的释放发生于线
- 6.24 锁的优化historical
1. JVM对锁的优化 JDK1.5之前sychronized内部锁的效率很低,1.5之后做了大量优化,提升了锁的性能。 优化措施主要有以下几个: 1.1. 锁的消除 JIT(不是javac)借助逃逸分析以及内联技术,分析某个同步代码块是否只能被一个线程访问, 是的话则不生成monitor相关的字节