checksafe.java
来自「实验操作系统课程设计中有关进程管理、内存管理、资源分配、银行家算法等要求。可视化」· Java 代码 · 共 49 行
JAVA
49 行
import java.util.Vector;
public class CheckSafe {
private int work;
Tu t;
private Vector<Integer> vtestres, vtesthres;
public CheckSafe(Tu t) {
this.t = t;
work = t.xaRes;
vtestres = new Vector<Integer>();
vtesthres = new Vector<Integer>();
for (int i = 0; i < t.queue.getvReady().size(); i++) {
vtestres.add(t.queue.getvReady().get(i).getres());
vtesthres.add(t.queue.getvReady().get(i).gethres());
}
for (int i = 0; i < t.queue.getvWait().size(); i++) {
vtestres.add(t.queue.getvWait().get(i).getres());
vtesthres.add(t.queue.getvWait().get(i).gethres());
}
}
public boolean test() {
if (t.cscontrol == true) {
int count = 0;
int flag = vtestres.size();
a: while (vtestres.size() != 0) {
count++;
for (int i = 0; i < vtestres.size(); i++) {
if (vtestres.get(i) <= work) {
work += vtesthres.get(i);
vtestres.remove(i);
vtesthres.remove(i);
break;
}
}
if (count > flag)
break a;
}
if (vtestres.size() == 0)
return true;
else
return false;
} else
return true;
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?