資源簡介
銀行家算法C語言實現,避免死鎖的經典算法的C語言實現
代碼片段和文件信息
#include?
#include?
typedef?struct
{
????int?A;
????int?B;
????int?C;
}?Resource;
const?int?m=5;?//進程個數
Resource?Available;//可利用的資源
Resource?Max[m];//最大需求
Resource?Allocation[m];//當前已分配的資源
Resource?Need[m];//還需要的各種資源
int?safeseq[m];?//安全序列
void?init()//初始化
{
????for(int?i=0;?i ????????scanf(“%d%d%d“&Allocation[i].A&Allocation[i].B&Allocation[i].C);
????for(int?i=0;?i ????????scanf(“%d%d%d“&Max[i].A&Max[i].B&Max[i].C);
????for(int?i=0;?i ????????scanf(“%d%d%d“&Need[i].A&Need[i].B&Need[i].C);
????scanf(“%d%d%d“&Available.A&Available.B&Available.C);
}
void?Probealloc(int?processResource?*res)//試探分配
{
????Available.A-=res->A;
????Available.B-=res->B;
????Available.C-=res->C;
????Allocation[process].A+=res->A
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件??????37807??2014-12-07?19:51??銀行家算法\bin\Debug\銀行家算法.exe
?????文件??????12410??2014-12-07?19:51??銀行家算法\main.cpp
?????文件??????12207??2014-12-07?19:51??銀行家算法\obj\Debug\main.o
?????文件???????1095??2014-12-05?14:45??銀行家算法\銀行家算法.cbp
?????文件????????159??2014-12-05?16:27??銀行家算法\銀行家算法.depend
?????文件????????322??2014-12-05?16:54??銀行家算法\銀行家算法.layout
?????目錄??????????0??2014-12-07?19:51??銀行家算法\bin\Debug
?????目錄??????????0??2014-12-07?19:51??銀行家算法\obj\Debug
?????目錄??????????0??2014-12-07?19:09??銀行家算法\bin
?????目錄??????????0??2014-12-07?19:09??銀行家算法\obj
?????目錄??????????0??2014-12-07?19:51??銀行家算法
-----------?---------??----------?-----??----
????????????????64000????????????????????11
- 上一篇:備忘錄算法
- 下一篇:c語言實現二叉樹的前中后序遍歷 遞歸和非遞歸 數據結構
評論
共有 條評論