锁的级别从低到高:无锁-偏向锁-轻量级锁-重量级锁
偏向锁:一段同步代码被一个线程访问,该线程自动获取锁。降低获取锁的代价
轻量级锁:当锁是偏向锁,被另一个线程访问,偏向锁升级为轻量级锁,其他线程自旋尝试获取锁,不会阻塞
重量级锁:当锁是轻量级锁,另一个线程自旋一定次数还没有获取锁,膨胀为重量级锁。会阻塞其他申请的线程,性能降低
锁的级别从低到高:无锁-偏向锁-轻量级锁-重量级锁
偏向锁:一段同步代码被一个线程访问,该线程自动获取锁。降低获取锁的代价
轻量级锁:当锁是偏向锁,被另一个线程访问,偏向锁升级为轻量级锁,其他线程自旋尝试获取锁,不会阻塞
重量级锁:当锁是轻量级锁,另一个线程自旋一定次数还没有获取锁,膨胀为重量级锁。会阻塞其他申请的线程,性能降低