乐观锁和悲观锁

1-悲观锁

它总是认为每次访问共享资源时会发生冲突,

所以必须对每次数据操作加上 锁,

以保证临界区的程序同一时间只能有一个线程在执行。

1-1 使用场景

悲观锁多用于”写多读少“的环境,避免频繁失败和重试影响性 能。

2-乐观锁

乐观锁通常是使用一种称为CAS的技术来保证线程执行的安全性。

由于无锁操作中没有锁的存在,

因此不可能出现死锁的情况,也就是说乐观锁天生免疫死锁。

2-1 使用场景

乐观锁多用于“读多写少“的环境,避免频繁加锁影响性能

posted @ 2021-12-12 09:37  姚狗蛋  阅读(28)  评论(0编辑  收藏  举报