(1)1. Lock-X(C)
2. read(C)
3. C:=C+1
4. write(C)
5. Lock-X(A)
6. unlock(C)

7. read(A)
8. A:=A*2
9. write(A)
10. unlock(A)
正确的,疑问:从步骤2 read(C)由于事物执行开始进入加锁阶段,为何步骤6可以解锁?(2)1. lock_S(Q)
2. read(Q)
3. unlock(Q)
4. lock_S(R)

5. read(R)
6. unlock(R)
错误的,疑问:是否是因为由于步骤2的事务执行导致处于加锁阶段所以步骤3不应该是解锁,或者由于步骤3处于解锁阶段而且并没有事务执行所以步骤4不应该是加锁?(3)1. lock_X(Q)
2. read(Q)
3. lock_S(R)
4. read(R)
5. unlock(R)

6. write(Q)
7. unlock(Q)正确的,疑问:
i. 步骤4为事务执行转为加锁阶段,应该不可以解锁,为何步骤5是解锁?
ii. 就这段代码来说先执行Q的解锁和先执行R的解锁有何区别,是否应该考虑?
iii. 如果同时对R加了X锁和S锁,是否用2次unlock(R)表示分别释放了R的X锁和S锁?谢谢