最可靠的网上彩票平台

传智播客旗下品牌:|||||

全国咨询/投诉热线:400-618-4000

Java面试之乐观锁和悲观锁的区别

更新时间:2020年05月26日13时44分 来源:传智播客 浏览次数:

乐观锁

乐观锁是一种乐观思想,即认为读多写少,遇到并发写的可能性低,每次去拿数据的时候都认为别人不会修改,所以不会上锁,但是在更新的时候会判断一下在此期间别人有没有去更新这个数据,采取在写时先读出当前版本号,然后加锁操作(比较跟上一次的版本号,如果一样则更新),如果失败则要重复读-比较-写的操作。

Java中的乐观锁基本都是通过CAS操作实现的,CAS 是一种更新的原子操作,比较当前值跟传入值是否一样,一样则更新,否则失败。

悲观锁

悲观锁是就是悲观思想,即认为写多,遇到并发写的可能性高,每次去拿数据的时候都认为别人会修改,所以每次在读写数据的时候都会上锁,这样别人想读写这个数据就会block直到拿到锁。

Java中的悲观锁就是Synchronized,AQS框架下的锁则是先尝试cas乐观锁去获取锁,获取不到,才会转换为悲观锁,如 RetreenLock。

以上我们介绍了java中的乐观锁和悲观锁的概念希望对你有所帮助,如果想系统学习和提升java技术能力,推荐了解传智播客中级java程序员培训课程。

在传智播客学java是什么感受?下面我们通过一个视频来感受。

1590050011625_咨询课程小.jpg


猜你喜欢:

JDK下载安装与环境变量配置图文教程【超详细】

java递归是什么意思,怎么用

Java中switch条件语句的用法

javaee

python

web

ui

cloud

test

c

netmarket

pm

Linux

movies

robot

uids

北京校区

    14天免费试学

    基础班入门课程限时免费

    申请试学名额

    15天免费试学

    最可靠的网上彩票平台基础班入门课程限时免费

    申请试学名额

    15天免费试学

    基础班入门课程限时免费

    申请试学名额

    15天免费试学

    基础班入门课程限时免费

    申请试学名额

    20天免费试学

    基础班入门课程限时免费

    申请试学名额

    8天免费试学

    基础班入门课程限时免费

    申请试学名额

    20天免费试学

    基础班入门课程限时免费

    申请试学名额

    5天免费试学

    基础班入门课程限时免费

    申请试学名额

    0天免费试学

    基础班入门课程限时免费

    申请试学名额

    12天免费试学

    基础班入门课程限时免费

    申请试学名额

    5天免费试学

    基础班入门课程限时免费

    申请试学名额

    5天免费试学

    基础班入门课程限时免费

    申请试学名额

    10天免费试学

    基础班入门课程限时免费

    申请试学名额
    四季彩票登陆 万家彩票注册 上海时时乐 百胜彩票开户 两个彩票平台刷流水可以赚钱吗 红牛彩票开户 天津十一选五前三走势 K8彩票开户 香港开奖结果2019+开奖结果 上海时时乐