更多“()能保证不产生死锁。A、两段锁协议B、一次封锁法C、2级封锁法协议D、3级封锁协议”相关问题
  • 第1题:

    能保证不产生死锁。

    A.两段锁协议

    B.一次封锁法

    C.2级封锁协议

    D.3级封锁协议


    正确答案:B
    解析:本题考查应试者对事务处理程序加锁协议的掌握。两段锁协议是指事务处理程序对数据进行读写操作前加锁,释放一个锁之后就不能再加锁,两段锁协议用来保证事务的可串行化(执行结果的正确性),但并不能保证产生死锁;一次封锁法是指事务处理程序在所有要进行读写操作的数据全部先加锁后再进行访问,在两段锁协议的基础上要求更严格,能保证不产生死锁;2级封锁协议是指事务处理程序在进行修改数据操作之前先对其加独占锁,直到事务处理程序结束前释放,在进行读取数据操作之前先对其加共享锁,读完后就释放,2级封锁协议可以防止丢失修改和读“脏”数据;3级封锁协议比是指事务处理程序在进行修改数据操作之前先对其加独占锁,直到事务处理程序结束前释放,在进行读取数据操作之前先对其加共享锁,直到事务处理程序结束前释放,比2级封锁协议更严格,可以防止丢失修改、读“脏”数据和不可重复读三种错误。除一次封锁法外,其他3个协议都是保证程序执行的正确性的,都可能产生死锁,但死锁问题可以由DBMS进行处理,而一次封锁法在实现上也困难,通常不采用。此题答案为B。

  • 第2题:

    数据库中预防死锁通常有两种方法:一种叫(16),它要求每个事物必须一次将所有要使用的数据全部加锁,否则就不能继续执行。另一种叫(17),它是预先对数据对象规定一个封锁顺序,所有事物都按这个顺序实行封锁。数据库系统中诊断死锁的方法与操作系统类似,一般使用(18)。

    A.两段锁协议

    B.一次封锁法

    C.排他封锁法

    D.共享封锁法


    正确答案:B

  • 第3题:

    下列叙述中,哪一条是不正确的?

    A.封锁是保证数据库一致性的常用方法

    B.封锁协议限制了可能的调度数目

    C.封锁自身会产生死锁问题

    D.强两阶段封锁协议就是严格两阶段封锁协议


    正确答案:D
    解析:严格两阶段封锁协议:除了要求封锁是两阶段之外,还要求事务持有的所有排他锁必须在事务提交之后方可释放。这个要求保证未提交事务所写的任何数据在该事务提交之前均以排他方式加锁,防止其他事务读取这些数据;强两阶段封锁协议:它要求事务提交之前不得释放任何锁。它旨在让冲突的事务尽可能地串行执行,这样的话,调度中的事务可以按其提交的顺序串行化。所以D)项不正确。

  • 第4题:

    下列叙述中,正确的是

    A.不遵循两段锁协议的并发调度一定是不可串行的

    B.两级封锁协议可能保证数据的可重读性

    C.对某处数据对象加了X封锁,则还可以在该数据对象上加S封锁

    D.遵循两段封锁协议的并发事务一定不会发生死锁


    正确答案:B
    解析:两段锁协议是保证并发调度可串行化的充分条件:对某个数据对象加了X锁,则其他任何事务不能再对该数据对象加任何类型的锁;遵循两段锁协议的并发事务可能发生死锁。

  • 第5题:

    可有效地防止丢失修改,并能保证事务T的可恢复性,但不能保证可重复读和不诌 “脏”数据的封锁协议是——。

    A.一级封锁协议

    B.二级封锁协议

    C.三级封锁协议

    D.四级封锁协议


    正确答案:A
    解析:一级封锁协议可有效地防止丢失修改,并能保证事务T的可恢复性。一级封锁协议是:事务T在修改数据R之前必须先加x锁,直到事务结束才释放。如果仅仅是读数据不对其修证,是不需要加锁的,所以不能保证可重复读和不读“脏”数据。

  • 第6题:

    数据库中能保证不产生死锁的方法为()。



    A.两段锁协议
    B.一次封锁法
    C.2级封锁协议
    D.3级封锁协议

    答案:B
    解析:
    一次封锁法要求每个事务必须一次将所有要使用的数据全部加锁,否则就不能继续执行。一次就将以后要用到的全部数据加锁,势必扩大了封锁的范围,从而降低了系统的并发度。降低并发度就意味着能保证不产生死锁。

  • 第7题:

    在数据库中解决死锁问题可以()。

    • A、使用一次封锁法预防死锁发生
    • B、使用顺序封锁法预防死锁发生
    • C、定期诊断系统中是否发生死锁,若有则撤销某个事务来解除之
    • D、使用两段锁协议

    正确答案:A,B,C

  • 第8题:

    以下关于事务调度和封锁的描述中,正确的是()。

    • A、遵守两段封锁协议的并发事务一定是可串行化的
    • B、可串行化的并发事务一定遵守两段封锁协议
    • C、遵守两段封锁协议的并发事务不一定是可串行化的
    • D、遵守两段封锁协议的并发事务一定不会产生死锁

    正确答案:A

  • 第9题:

    三级封锁协议分别是什么?各级封锁协议的主要区别是什么?每一级封锁协议能保证什么?


    正确答案:一级封锁协议:对事务T要修改的数据加X锁,直到事务结束才释放。
    二级封锁协议:一级封锁协议加上事务T对要读取的数据加S锁,读完后即释放S锁。
    三级封锁协议:一级封锁协议加上事务T对要读取的数据加S锁,并直到事务结束才释放。
    各级封锁协议的主要区别在于读操作是否需要申请封锁,以及何时释放锁。
    一级封锁协议可以防止丢失修改,并保证事务T是可恢复的。 二级封锁协议除了可以防止丢失修改外,还可以防止读“脏”数据。
    三级封锁协议除了可以防止丢失修改和不读“脏”数据外,还可以进一步防止不可重复读。

  • 第10题:

    两段封锁协议


    正确答案:事务分成两个阶段,前一阶段只能申请封锁,后一阶段只能释放封锁,这一规则称为事务的两段封锁协议。

  • 第11题:

    多选题
    以下关于两段锁协议的叙述,正确的是()。
    A

    在对任何数据进行读、写操作之前,首先要申请并获得对该数据的封锁

    B

    在解除一个封锁之后,事务不再申请和获得任何其他封锁

    C

    两段锁协议是保证并发调度可串行化的必要条件

    D

    两段锁协议是保证并发调度可串行化的充分条件


    正确答案: C,D
    解析: 暂无解析

  • 第12题:

    单选题
    要求事务在读取数据前先加共享锁,且直到该事务执行结束时才释放相应的锁,这种封锁协议是()
    A

    一级封锁协议

    B

    二级封锁协议

    C

    三级封锁协议

    D

    两段锁协议


    正确答案: D
    解析: 暂无解析

  • 第13题:

    ______能保证不产生死锁。

    A.两段锁协议

    B.一次封锁法

    C.2级封锁法协议

    D.3级封锁协议


    正确答案:B

  • 第14题:

    针对分布式事务,要求提供参与者状态的协议是(60)。

    A.一次封锁协议

    B.两段锁协议

    C.两阶段提交协议

    D.三阶段提交协议


    正确答案:D
    解析:本题考查分布式事务处理的基本概念。  一交封锁协议和两段锁协议属于集中式事务处理所采用的技术,故选项A、B错误;两阶段提交协议分为参与者提交请求和协调者应答两个阶段,故选项C错误;三阶段提交协议要求在两阶段协议基础上提供参与者状态,故选项D正确。

  • 第15题:

    下列叙述中,正确的是( )。A.不遵循两段封锁协议的并发调度一定是不可串行的B.两级封锁协议可以保证数据的可重读性C.对某个数据对象加了X封锁,则还可以在该数据对象上加S封锁D.遵循两段封锁协议的并发事务一定不会发生死锁


    正确答案:B
    A,D的说法太过于绝对,不准确,C项对数据对象加了X封锁之后,则不能再加S封锁。

  • 第16题:

    对数据对象施加封锁,可能会引起活锁和死锁问题。预防死锁通常有一次封锁法和【 】两种方法。


    正确答案:顺序封锁法
    顺序封锁法 解析:预防死锁有一次封锁法、顺序封锁法。 一次封锁法要求每个事务必须一次将所有要使用的数据全部加锁,否则就不能继续执行。顺序封锁法是预先对数据对象规定一个封锁顺序,所有事务都按这个顺序实行封锁。

  • 第17题:

    ● 为保证并发事务调度的正确性,可采用的封锁协议是 () 。()A.PXC协议 B.PSC协议 C.两段锁协议 D.PSC或PXC协议


    正确答案:C
    如果多个事务并发执行的结果与按串行执行的结果相同,叫可串行化调度。可串行化调度是并发事务正确性的准则。
      两段锁协议(2PL Two-Phase Locking)是保证并发调度可串行性的封锁协议。指必须分两个阶段对数据进行加锁和解锁,分扩阶段(申请加锁),第二阶段是收缩阶段(释放锁)。但2PL不能保证不发生死锁。

  • 第18题:

    以下关于两段锁协议的叙述,正确的是()。

    • A、在对任何数据进行读、写操作之前,首先要申请并获得对该数据的封锁
    • B、在解除一个封锁之后,事务不再申请和获得任何其他封锁
    • C、两段锁协议是保证并发调度可串行化的必要条件
    • D、两段锁协议是保证并发调度可串行化的充分条件

    正确答案:A,B,D

  • 第19题:

    下面说法正确的是()

    • A、遵循两段锁协议保证不会产生死锁
    • B、不遵循两段锁协议一定产生死锁
    • C、并发调度是正确的,当且仅当这些事务遵循两段锁协议
    • D、如果事务都遵循两段锁协议,则这些事务的任何并发调度都是可串行化的

    正确答案:D

  • 第20题:

    要求事务在读取数据前先加共享锁,且直到该事务执行结束时才释放相应的锁,这种封锁协议是()

    • A、一级封锁协议
    • B、二级封锁协议
    • C、三级封锁协议
    • D、两段锁协议

    正确答案:C

  • 第21题:

    一级封锁协议可以保证哪种数据不一致?二级封锁协议哪?三级封锁协议哪? 


    正确答案:一级封锁协议可以保证不丢失修改,但不能保证读“脏”数据和可重复读;二级封锁协议可以保证不丢失修改和不读“脏”数据,但不能保证可重复读;三级封锁协议可以保证不丢失修改,不读“脏”数据和可重复读。

  • 第22题:

    多选题
    在数据库中解决死锁问题可以()。
    A

    使用一次封锁法预防死锁发生

    B

    使用顺序封锁法预防死锁发生

    C

    定期诊断系统中是否发生死锁,若有则撤销某个事务来解除之

    D

    使用两段锁协议


    正确答案: D,B
    解析: 暂无解析

  • 第23题:

    单选题
    ()能保证不产生死锁。
    A

    两段锁协议

    B

    一次封锁法

    C

    2级封锁法协议

    D

    3级封锁协议


    正确答案: D
    解析: 暂无解析