问题
问答题
阅读下列说明,回答问题。
【说明】
现有事务T1,T2、L3它们对数值型数据A执行的操作分别如下:
T1;将A加1。
T2:将A加倍。
T3:输出A的值,并将A置为1。
【问题2】 各个事务内部的结构如表13-4所示,若事务执行不施加任何锁,则有多少种不同的调度方式写出简要的计算过程。 表13-4各个事务内部的结构
|
答案
参考答案:
解析:假设Ri、Rj、Rk表示各事务的R操作,Up、Uq、Ur表示各事务的U操作,那么根据组合数学中的乘法原理有:
Ri→Rj→Rk→Up→Uq→Ur 3×2×1×3×2×1=36
Ri→Rj→Up→Rk→Uq→Ur 3×2×2×1×2×1=24
Ri→Rj→Up→Uq→Rk→Ur 3×2×2×1×1×1=12
Ri→Up→Rj→Rk→Uq→Ur 3×1×2×1×2×1=12
Ri→Up→Rj→Uq→Uk→Ur 3×1×2×1×1×1=6
全部加起来得:36+24+12+12+6=90,因此共有90种不同的调度方式。