乐观锁悲观锁如何理解?如何实现的?优缺点是什么

2019-10-07  本文已影响0人  大涛先生

悲观锁认为,查询就是为了修改,必须要锁住,不管我修改不修改,在我事务未提交之前,我不允许其他线程对我的数据进行任何操作,只有我的事务提交,或回滚我才释放锁。实现是在sql后面加for update

例如 :synchronize

乐观锁认为,我不关心你查询是为了什么,放心大胆的让线程去操作,出了问题再处理,它的实现方式是在表里加一个version字段 查询时查version,修改时version最为条件。

实现方式有二

    1.时间戳

    2.版本号

例如:redis

上一篇下一篇

猜你喜欢

热点阅读