(1)4種 。 16,8,4,2
t1 t2 t3 a=16
t1 t3 t2. a=8
t2 t1 t3 / t3 t1 t2. a=4
t2 t3 t1 /t3 t2 t1. a=2
(2)結果為16
t1t2
t3slock a
y=r(a)=0
unlock a
xlock a
slock a
a=y+2
等待w(a)
等待unlock a
等待y=r(a)=2
unlock a
xlock a
slock a
a=y*2
等待w(a)
等待unlock a
等待y=r(a)=4
unlock a
xlock a
a=y*2
w(a)
unlock a
(3)結果為0
t1t2
t3slock a
y=r(a)=0
slock a
等待unlock a
y=r(a)=0
unlock a
xlock a
a=y*2
slock a
w(a)
等待unlock a
等待y=r(a)=0
unlock a
xlock a
a=y+2
xlock a
w(a)
等待unlock a
等待a=y**2
w(a)
unlock a
(4)t1
t2t3
slock a
y=r(a)=0
xlock a
a=y+2
slock a
w(a)
等待unlock a
等待y=r(a)=2
xlock a
unlock a
等待slock a
a=y*2
等待w(a)
等待unlock a
等待y=r(a)=4
unlock a
xlock a
a=y**2
w(a)
unlock a
unlock a
(5)t1
t2t3
slock a
y=r(a)=0
slock a
y=r(a)=0
xlock a
等待xlock a
等待slock a
y=r(a)=0
xlock a
等待是衝突可序列化的排程
不同事物的讀寫或寫寫操作之間可以交換位置,交換位置後r3(b)w3(b)r2(b)r2(a)w2(b)r1(a)r1(b)w1(a),等價於乙個序列排程t3t2t1
(1)t1
t2slock a
x=r(a)
slock b
y=r(b)
xlock b
b=x+y
w(b)
unlock b
slock b
x=r(b)
unlock b
unlock a
slock a
y=r(a)
xlock a
a=x+y
w(a)
unlock a
unlock a
unlock b
(2)可能會引起死鎖
t1t2
slock a
x=r(a)
slock b
y=r(b)
slock b
y=r(b)
xlock b
等待slock a
等待x=r(a)
等待xlock a)
等待
資料庫作業21 第十一章 併發控制
設t1 t2 t3,是如下的三個事務,設a的初值為0。t1 a a 2 t2 a a2 t3 a a 2 即 a a 2 1 若這三個事務允許併發執行,則有多少種可能的正確結果?請一一枚舉出來。2 請給出乙個可序列化的排程,並給出執行結果。3 請給出乙個非序列化的排程,並給出執行結果。4 若這三個事...
資料庫作業21 第十一章 併發控制課後習題
9 設t1 t2 t3是如下三個事物,設a的初值為0.t1 a a 2 t2 a a 2 t3 a a 2 即a leftarrow a2 a 2a2 1 若這三個事物允許併發執行,則有多少種可能的正確結果?請一一枚舉出來。可能會產生的結果有 2 4 8 16 t1t2t3 16 t1t3t2 8 ...
資料庫作業21 併發控制
這不排列組合嗎 t1 t2 t3 16 t1 t3 t2 8 t2 t1 t3 4 t2 t3 t1 4 t3 t1 t2 2 t3 t2 t1 2 2 t1 t2t3 slock a y r a 0 unlock a xlock a slock a a y 2 等待w a 等待unlock a 等...