为什么web worker可以在前端开多线程,解决单线程卡死页面的问题,但是没有得到广泛使用?
30岁了,你在深圳过着什么样的生活?
如何评价电视剧《长安的荔枝》大结局?
如何看待“计算机民科“的网站51soez已关站维护一周?
为什么是9月3日阅兵而不是10月1日国庆阅兵?
湖南卫视究竟是一个怎样的存在?

mysql既然是可重复读,为什么 乐观锁可以生效?

发布日期:2025-06-25 04:45:14 浏览次数:0

可重复读会使乐观锁进入无限自旋中,原因是select语句查询到一直是mvcc一致性读视图,这个数据是不会更新的,导致cas中的查询环节失效,以至于更新一直失败。

解决办法:1、事务外循环,每次cas都重开事务。

2、事务内循环,cas的查询语句加for update,因为加了锁所以性能很差。

3、降低事务隔离级别为读已提交,导致一致性视图失效。

4、最推荐的,没有事务就是最好的事务,对于多个源频繁修改同一条数据某个字段的情况,应该考虑…。

mysql既然是可重复读,为什么 乐观锁可以生效?