synchronized锁升级
2021-04-06 10:09:44 0 举报
synchronized锁升级
作者其他创作
大纲/内容
判断偏向锁是否开启,将线程id写进markword
偏向锁未启用
多个线程加锁CAS轻度竞争
重量级锁(10)
无锁(001)
偏向锁(101)
java虚拟机偏向锁默认延时4s开启偏向锁
内部设置了一个自旋的次数(自适应自旋)超过了就会就行锁升级,如果有大量线程自旋,会耗费CPU
调用wait()方法,因为调用wait会让进程进入waitSet所以必须升级到重量级锁
CAS自旋不成功重度竞争锁膨胀
轻量级锁(00)
0 条评论
下一页