共享锁和排它锁

14-10-01 10:23 23522 0 技术

两种锁的概念

共享锁(Shared Lock,S锁)

  • 允许多个事务同时读取数据,但不允许修改数据。
  • 其他事务可以获取共享锁,但不能获取排它锁。

排它锁(Exclusive Lock,X锁):

  • 独占数据的访问权,禁止其他事务读取或修改。
  • 在事务持有排它锁期间,其他事务不能获取共享锁或排它锁。

这两种锁机制确保了数据的一致性和完整性。

两种锁的使用场景

共享锁(Shared Lock, S锁)

假设有两个用户,用户A和用户B,他们都想读取同一条记录。用户A获取了该记录的共享锁,因此可以读取数据。同时,用户B也可以获取共享锁来读取相同的数据,因为共享锁允许多个读操作并发进行。

排它锁(Exclusive Lock, X锁)

现在,用户A想要修改这条记录,他需要获取排它锁。此时,用户B不能获取任何锁(包括共享锁和排它锁)来访问该记录,直到用户A完成修改并释放排它锁。这样保证了数据的一致性和防止并发写入冲突。

请登录后发表评论 点击登录

文章归档

文章日历

2024 年 11 月
26 27 28 29 30 01 02
03 04 05 06 07 08 09
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30

文章标签

最新评论

友情链接