乐观锁的概念

Posted guoDaXia的博客

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了乐观锁的概念相关的知识,希望对你有一定的参考价值。

乐观锁:
大多数是基于数据版本(version)的记录机制实现的。即为数据增加一个版本标识,在基于数据库表的版本解决方案中,一般是通过为数据库表添加一个“version”字段开实现读取数据时,将此版本号一同读出,之后更新时,对此版本号加1.此时,将提交数据的版本号与数据表对应记录的当前版本号进行对比,如果提交的数据版本号大于当前的数据版本号,则予以更新,否则认为是过期数据。

比如:版本控制器svn就肯定乐观锁的实现。首先中央仓库和个人仓库中的版本号都一致。如果拉下来的进行了修改,本地对应的锁自增。然后提交到中央仓库后中央仓库的锁变成提交者的锁,之后就乐观锁控制。

以上是关于乐观锁的概念的主要内容,如果未能解决你的问题,请参考以下文章

数据库中乐观锁与悲观锁的概念

java中的CAS乐观锁概念以及CAS的问题;如何解决乐观锁ABA问题

Java锁的分类概念和状态

请说一下悲观锁和乐观锁的区别

java - 锁的种类及详解

MyBatisPlus如何实现乐观锁