搜索
写经验 领红包
 > 生活

银行家算法例题及答案(银行家算法破坏了死锁的什么条件)

导语:银行家算法

一、银行家算法

1、问题描述

(1)、研究银行家如何将总数 一定的资金,安全

地借给若干个顾客,使顾客既能满足对资金的需求,

也使银行家可以收回自己的全部资金,不至于破产

2、以下限制条件

(1)、每个顾客在借款前必须提前说明所需资金总额

(2)、每次借钱都是以一个单位进行(如,一个单位为一万人民币)

(3)、顾客在拿到一个单位的借款前可能需要等待

(4)、银行保证顾客的等待时间是有限的(借或者不借)

3、算法实例

4、算法策略:将资金优先借给需求较少的客户

5、应用场景

(1)、操作系统内核中的进程管理

(2)、数据库内核中的频繁事务管理

6、Qt中算法实施方案

(1)、使用多线程机制模拟客户和银行

(2)、银行优先分配给资源最小的客户

(3)、当客户的需求无法满足的时候

A、收回已分配的资源

B、强制线程结束

二、小结

1、银行家算法常用于资源分配的场合

(1)、解决的问题:保证资源分配的安全性

(2)、算法策略:优先选择量需求较少的客户进行资源分配

免责声明:本站部份内容由优秀作者和原创用户编辑投稿,本站仅提供存储服务,不拥有所有权,不承担法律责任。若涉嫌侵权/违法的,请与我联系,一经查实立刻删除内容。本文内容由快快网络小姿创作整理编辑!