首先结论是不管jdk哪个版本,synchronize都是可重入锁,只不过早期版本它是一个重量级锁。
后来的版本对它进行了优化,这就涉及了synchronize的锁升级。从无锁、偏向锁、轻量级锁到重量级锁的一个过程。
可以通过自己动手写一个synchronize的方法,方法体也叫临界区中仍然可以存在synchronize来证明。
原创 | 2022-10-11 15:03:00 |浏览:1.6万
首先结论是不管jdk哪个版本,synchronize都是可重入锁,只不过早期版本它是一个重量级锁。
后来的版本对它进行了优化,这就涉及了synchronize的锁升级。从无锁、偏向锁、轻量级锁到重量级锁的一个过程。
可以通过自己动手写一个synchronize的方法,方法体也叫临界区中仍然可以存在synchronize来证明。