Java面试题之并发篇
:当两个或以上的线程交替获取锁,但没有在对象上并发的获取锁时,偏向锁升级为轻量级锁。线程采用cas的自旋方式尝试获取该锁,避免阻塞线程造成的cpu在用户态和内核态间转换的消耗。】:在锁对象的头部中记录一下当前获取到该锁的线程ID,下次如果该线程又来获取该锁就可以直接获取了。】:当两个或以上的线程并发的在同一个对象进行同步时,避免无用的自选消耗cpu,轻量级锁会升级成重量级锁。:锁消除指的是JVM检测到一些同步的代码块,完全不存在数据竞争的场景,也就是不需要。的自旋时间和锁的持有者状态来决定。
原创
2024-03-06 10:42:45 ·
389 阅读 ·
0 评论