偏向锁有资源争用的时候升级为自旋锁
自旋锁10次后 升级为重量级锁
自旋锁 属于用户态的 占用cpu 适用:加锁的代码执行时间比较短,线程数量比较少
重量级锁 os 内核态 不占用cpu 在旁边竞争的线程进入等待队列,等待不占用cpu资源,需要等待cpu唤醒 适用于: 执行时间长,线程数量比较多用系统锁
锁只能升级不能降级
偏向锁有资源争用的时候升级为自旋锁
自旋锁10次后 升级为重量级锁
自旋锁 属于用户态的 占用cpu 适用:加锁的代码执行时间比较短,线程数量比较少
重量级锁 os 内核态 不占用cpu 在旁边竞争的线程进入等待队列,等待不占用cpu资源,需要等待cpu唤醒 适用于: 执行时间长,线程数量比较多用系统锁
锁只能升级不能降级