什么是死锁?如何避免发生死锁?

题目

什么是死锁?如何避免发生死锁?

如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

下述____不是死锁处理策略。

A、时间溢出

B、死锁避免

C、死锁预防

D、死锁检测


正确答案:B

第2题:

Dijkstra提出的银行家算法属于

A)死锁预防

B)死锁避免

C)死锁检测

D 死锁解除


正确答案:B

第3题:

不让死锁发生的策略可以分为静态和动态两种,死锁避免属于()策略。


参考答案:动态

第4题:

对资源采用按序分配策略能达到()的目的。

  • A、防止死锁
  • B、避免死锁
  • C、检测死锁
  • D、解除死锁

正确答案:A

第5题:

银行家算法是一种()算法。

A.死锁检测
B.死锁解除
C.死锁预防
D.死锁避免

答案:D
解析:
银行家算法是一个避免死锁的著名算法。

第6题:

请给出预防死锁和检测死锁的方法。若检测发生死锁,应如何解除死锁?


正确答案:预防死锁通常有以下两种方法: ①一次封锁法。就是要求每个事务必须一次将所有要使用的数据全部加锁。否则该事务不能继续执行; ②顺序封锁法是预先对数据对象规定一个封锁顺序。所有事务都按这个顺序实行封锁。检测死锁发生的一种方法是选择一个处理死锁代价最小的事务将其撤销释放此事务持有的所有锁使其他事务得以继续运行下去。
预防死锁通常有以下两种方法: ①一次封锁法。就是要求每个事务必须一次将所有要使用的数据全部加锁。否则该事务不能继续执行; ②顺序封锁法,是预先对数据对象规定一个封锁顺序。所有事务都按这个顺序实行封锁。检测死锁发生的一种方法是选择一个处理死锁代价最小的事务,将其撤销,释放此事务持有的所有锁,使其他事务得以继续运行下去。 解析:在IN子查询中,内层查询只处理一次,得到一个结果集,再依次处理外层查询。 解除死锁问题有两类方法:一类方法是采用一定措施来预防死锁的发生;另一类方法是允许发生死锁。然后采用一定手段定期诊断系统中有无死锁,若有则解除之。

第7题:

系统允许部分进程发生死锁,通过定时运行资源分析程序并报告是否已有死锁的方法称为

A.死锁预防

B.死锁避免

C.死锁检测

D.死锁解除


正确答案:C

第8题:

银行家算法是一种()算法。

A、死锁预防

B、死锁避免

C、死锁解除

D、死锁检测


参考答案:B

第9题:

资源的静态分配算法在解决死锁问题中是用于()

  • A、 防止死锁
  • B、 避免死锁
  • C、 检测死锁
  • D、 解除死锁

正确答案:A

第10题:

死锁的发生是坏事还是好事?试说明理由。如何解除死锁状态?


正确答案: 在DBS运行时,死锁状态是我们不希望发生的,因此死锁的发生本身是一件坏事。但是坏事可以转换为好事。如果我们不让死锁发生,让事务任意并发做下去,那么有可能破坏DB中的数据,或用户读了错误的数据。从这个意义上讲,死锁的发生是一件好事,能防止错误的发生。
在发生死锁后,系统的死锁处理机制和恢复程序就能起作用,抽取某个事务作为牺牲品,把它撤销,做ROLLBACK操作,使系统有可能摆脱死锁状态,继续运行下去。