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