可重复读会使乐观锁进入无限自旋中,原因是select语句查询到一直是mvcc一致性读视图,这个数据是不会更新的,导致cas中的查询环节失效,以至于更新一直失败。
解决办法:1、事务外循环,每次cas都重开事务。
2、事务内循环,cas的查询语句加for update,因为加了锁所以性能很差。
3、降低事务隔离级别为读已提交,导致一致性视图失效。
4、最推荐的,没有事务就是最好的事务,对于多个源频繁修改同一条数据某个字段的情况,应该考虑…。
以上就是小编为大家介绍的mysql既然是可重复读,为什么 乐观锁可以生效?_江西省抚州市宜黄县吸如灭给交通用具股份有限公司的全部内容,如果大家还对相关的内容感兴趣,请持续关注
本文标题:mysql既然是可重复读,为什么 乐观锁可以生效?_江西省抚州市宜黄县吸如灭给交通用具股份有限公司 地址: