问题 单项选择题

在并发控制中引入两段锁协议的目的是( )。

A.为了解决并行执行时可能引起的死锁问题

B.为了解决并行执行时可能引起的活锁问题

C.为了解决交叉调度的不可串行化问题

D.为了解决不同的调度导致不同的运行结果

答案

参考答案:C

解析: 两段锁协议是指所有事务必须分两个阶段对数据项加锁和解锁。所谓两段锁的含义是,事务分为两个阶段;第一阶段是获得封锁,也称为扩展阶段:第二阶段是释放封锁,也称为收缩阶段。若并发执行的所有事务均遵守两段锁协议,则对这些事务的任何并发调度策略都是可串行化的。但需要注意:事务遵守两段锁协议是可串行化调度的充分条件,而不是必要条件。即若并发事务都遵守两段锁协议,则对这些事务的任何并发调度策略都是可串行化的:若对并发事务的一个调度是可串行化的,不一定所有事务都符合两段锁协议。同时还需注意,两段锁协议不要求事务必须一次将所有要使用的数据全部加锁,因此遵守两段锁协议的事务可能发生死锁。

单项选择题
单项选择题 B1型题