问答题
阅读下列说明,根据要求回答问题。
[说明]
某银行的转账业务分为如下两类操作。
(1)读取账户A余额到变量x,记为x=R(A)。
(2)将变量x值写入账户A中的余额,记为W(A,x)。
从账户A向账户B转账金额x元的伪代码操作序列为:a=R(A),a=a-x,W(A,a),b=R(B),b=b+x,W(B,b)。
针对上述业务及规则,完成下列问题。若允许对同一账号同时进行转账,要保证转账程序的并发执行,引入共享锁指令SLock(b)和独占锁指令xLock(A)对数据A进行加锁,解锁指令Unlock(A)对数据A进行解锁。
请补充上述转账业务的伪代码序列,使其满足2PL协议。
【参考答案】
这是一道要求读者掌握2PL协议实际应用的综合理解题,本题的解答思路如下。
在并发状态下,可能会相互干扰破坏事务......
(↓↓↓ 点击下方‘点击查看答案’看完整答案 ↓↓↓)
点击查看答案
相关考题
