您的位置: 网站首页> it面试题> 当前文章

讨论Java中锁的升级优化有几种

老董-我爱我家房产SEO2024-04-21156围观,111赞

  1、偏向锁: 当锁被第一次获取时,JVM将会在锁对象的头部标记信息中记录获取它的线程ID,之后该线程进入和退出同步块时不需要进行CAS操作,只需要简单地检查锁对象头部的标记。

  2、轻量级锁: 当偏向锁失败时,如果其他线程尝试获取锁,JVM会将锁升级为轻量级锁。轻量级锁通过在栈帧中创建锁记录(Lock Record)来存储锁对象的标记,并通过CAS操作尝试获取锁。

  3、重量级锁: 当轻量级锁的自旋锁失败时,即多个线程竞争锁时,JVM会将锁升级为重量级锁。重量级锁通过操作系统的互斥量(Mutex)实现,线程会被挂起,直到锁被释放。

很赞哦!

python编程网提示:转载请注明来源www.python66.com。
有宝贵意见可添加站长微信(底部),获取技术资料请到公众号(底部)。同行交流请加群 python学习会

文章评论

    讨论Java中锁的升级优化有几种文章写得不错,值得赞赏

站点信息

  • 网站程序:Laravel
  • 客服微信:a772483200