( 17 )事务 T 0 、 T 1 和 T 2 并发访问数据项 A 、 B 和 C ,下列属于冲突操作的是A)T 0 中的 read(A) 和 T 0 中的 write(A)B)T 0 中的 read(B) 和 T 2 中的 read(C)C)T 0 中的 write(A) 和 T 2 中的 write(C)D)T 1 中的 read(C) 和 T 2 中的 write(C)

题目

( 17 )事务 T 0 、 T 1 和 T 2 并发访问数据项 A 、 B 和 C ,下列属于冲突操作的是

A)T 0 中的 read(A) 和 T 0 中的 write(A)

B)T 0 中的 read(B) 和 T 2 中的 read(C)

C)T 0 中的 write(A) 和 T 2 中的 write(C)

D)T 1 中的 read(C) 和 T 2 中的 write(C)


相似考题
更多“( 17 )事务 T 0 、 T 1 和 T 2 并发访问数据项 A 、 B 和 C ,下列属于冲突操作的是A)T 0 中的 read ”相关问题
  • 第1题:

    若系统中存在5个等待事务T0,T1,T2,T3,T4,其中:T0正等待被T1锁住的数据项A1, T1正等待被T2锁住的数据项A2,T2正等待被T3锁住的数据项A3,T3正等待被T4锁住的数据项A4,T4正等待被T0锁住的数据项A0,则系统处于(46)的工作状态。

    A.并发处理

    B.封锁

    C.循环

    D.死锁


    正确答案:D
    解析:本题考查关系数据库事务处理方面的基础知识。和操作系统一样,封锁的方法可能引起活锁和死锁。例如事务T1封锁了数据R,事务T2请求封锁R,于是T2等待。T3也请求封锁R,当T1释放了R上的封锁之后系统首先批准了T3的请求,T2仍然等待。然后T4又请求封锁R,当T2释放R上的封锁后系统又批准了T4的请求…T2有可能长期等待、这就是活锁。避免活锁的简单方法是采用先来先服务的策略。即让封锁子系统按请求封锁的先后次序对事务排队。数据R上的锁一且释放就批准申请队列中的第一个事务获得锁。又如事务T1封锁了数据R1,T2封锁了数据R2。然后T1又请求封锁R2,T2请求封锁R1。于是T1等待T2,释放R2上的封锁而同时T2等待T1释放R1上的封锁。这就使得两个事务永远不能结束。出现了死锁。

  • 第2题:

    若系统中存在4个等待事务T0、T1、T2和T3,其中T0正等待被T1锁住的数据项A1,T1正等待被T2锁住的数据项A2,T2正等待被T3锁住的数据项A3, T3正等待被T0锁住的数据项A0。则此时系统所处的状态是

    A.活锁

    B.死锁

    C.封锁

    D.正常


    死锁

  • 第3题:

    存在一个等待事务集{T0, T1, T2},其中T0正等待被T1锁住的数据项,T1正等待被T2锁住的数据项,T2正等待被T0锁住的数据项,则系统的工作状态处于()。

    A.并发处理

    B.封锁

    C.饿死

    D.死锁


    D 解析:这种循环等待的现象称为死锁。

  • 第4题:

    下列两个事务的指令是冲突指令的是

    A.T1:Read(M), T2:Write(N)

    B.T1:Write(M),T2:Write(N)

    C.T1:Write(N),T2:Read(N)

    D.T1:Read(N), T2:Read(N)


    S

  • 第5题:

    若系统中存在4个等待事务T0、T1、T2和T3,其中T0正等待被T1锁住的数据项A1,T1正等待被T2锁住的数据项A2,T2正等待被T3锁住的数据项A3, T3正等待被T0锁住的数据项A0。则此时系统所处的状态是()

    A.活锁

    B.死锁

    C.封锁

    D.正常


    B