www.pudn.com > program.rar > RunThread.java
public class RunThread extends Thread {
private boolean bl = true;
public boolean drawControl;
Tu t;
Pcb pRun,p;
CheckSafe chs;
PaintStore ps;
public RunThread(Tu t) {
this.t = t;
drawControl = false;
ps = new PaintStore();
}
public void run() {
while (bl) { // 处理各个队列的转移
t.queue.supportToReady();
if (t.queue.getvReady().size() > 0||t.queue.getvHang().size()>0) {
p = t.queue.getvReady().get(0);
if (p.getrtime() <= 0){ //销毁进程
t.xaRes += p.gethres(); //释放资源
t.queue.freeStore(p); //释放内存
t.queue.getvReady().remove(p);
t.queue.supportToReady();//后备进就绪
t.trstore.setText(t.astore+"%");
t.trres.setText(t.xaRes+"");
}
t.PrintList(t.queue.getvSupport(), t.ms);
a:while(t.queue.getvReady().size()>0||t.queue.getvWait().size()>0){
chs = new CheckSafe(t);
for(int i=0;i