银行家算法Python版

#!/bin/python
## Available 
## Mp 进程需要的最大资源
## Cp 进程当前占用的资源
## 用一个列表描述某个进程p的状态。p1 [ Mp, Cp]

Available = 20
p1 = [9, 4]
p2 = [50, 3]
p3 = [2, 1]
p4 = [6, 2]
P = [p1, p2, p3, p4]
while( P ):
    for p in P:
        Found = False
        if (p[0] - p[1]) < Available:
            Available = Available + p[1]
            P.remove(p)
            Found = True 
    if (not Found):
        print("Fail")
        break
print("Done")

    原文作者:Richard Oldman
    原文地址: https://zhuanlan.zhihu.com/p/55207784
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞