请在 下方输入 要搜索的题目:

试证明若并发事务遵守两段锁协议,则对这些事务的并发调度是可串行化的。

试证明若并发事务遵守两段锁协议,则对这些事务的并发调度是可串行化的。

发布时间:2025-06-07 23:18:25
推荐参考答案 ( 由 快搜搜题库 官方老师解答 )
联系客服
答案:答:首先以两个并发事务为例,存在多个并发事务的情形可以类推。根据可串行化定义可知,事务不可串行化只可能发生在下列两种情况:事务写某个数据对象A, 读或写A;事务读或写某个数据对象A, 写A. 下面称A为潜在冲突对象。设访问的潜在冲突的公共对象为{}.不失一般性,假设这组潜在冲突对象中{}均符合情况(1); 符合情况(2)。对于所有需要XLockx;①:需要SLockx或XLockx。②(1)如果操作①先执行,则事务获得锁等待:由于遵守两段锁协议,事务T在成功获得X和Y中全部对象及非潜在冲突对象的锁后,才会释放锁。这时如果存在或Y, 已获得w的锁,则会出现死锁:否则,在对X、Y中对象全部处理完毕后,才能执行。这相当于按的顺序串行执行。根据可申行化定义,的调度是可串行化的。(2)操作②先执行的情况与(1) 对称。因此,若并发事务遵守两段锁协议,则在不发生死锁的情况下,对这些事务的并发调度一定是可串行化的。
专业技术学习
专业技术学习
搜搜题库系统