锁类型
锁
1.排他锁
概念: 排他锁(Exclusive[ɪkˈsklu:sɪv] (排外的,单独的) Lock) 简称为:[X锁],又称为写锁或独占锁,是一种基本类型的锁.
解释: 若事物 T 在数据对象O上加了排他锁(X锁),那么在整个加锁期间只允许事物T对数据对 象O进行读取和更新操作,其他任何事物不能在对此数据对象做任何类型的操作,直到事物T释放 了加在对象O上的排他锁.
排他锁核心: 排他锁的核心是,如何保证当前有且仅有一个事物获得锁并且锁被释放后,所有在等待获取锁的事物都能被通知到.
2.共享锁
概念: 共享锁(Share Locks),简称[S锁],又称读锁
解释: 如果事物T对数据对象O加上了共享锁,那么当前事物只能对O进行读取操作,其他事物也只能对O加共享锁,直到数据对象O上的所有共享锁都被释放.
3.区别
共享锁和排他锁的根本区别是:共享锁对所有事物可见,而排他锁只对当前事物可见
4. 兼容性
类型 | S | X |
---|---|---|
S | √ | x |
X | x | x |