多线程锁的升级和无锁、偏向锁、轻量级锁、重量级锁

随着竞争情况逐渐升级,锁可以升级但不能降级。

锁一共四种状态,低-->高 无锁状态、偏向锁状态、轻量级锁状态、重量级锁状态

偏向锁:

优点:加锁和解锁不需要额外的消耗,和执行非同步方法相逼仅存在纳秒级的差距。

缺点:如果线程间存在锁竞争,会带来额外的锁撤销的消耗(适用只有一个线程访问同步块场景)

轻量级锁:

优点:竞争的线程不会阻塞,提高了程序的响应速度

缺点:如果始终得不到锁竞争的线程会自旋消耗CPU (追求响应时间,同步块执行速度非常快)

重量级锁:

优点:线程竞争不使用自旋,不会消耗CPU

缺点:线程阻塞,响应时间缓慢 (追求吞吐量,同步块执行速度较长)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值