亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? printer.java.svn-base

?? java寫的一個模擬cpu程序
?? SVN-BASE
字號:
/**
 * Printer.java
 * 
 * 
 * @author 詹道楠
 * @date 2008-5-8
 */

package execute;

import java.util.StringTokenizer;

public class Printer extends Thread implements Parameters {
	
	private SynchronizedQueue readyQueue;
	private SynchronizedQueue printQueue;
	private Memory mem;
	
	private UI ui;
	
	/**
	 * Return the ui.
	 */
	
	public UI getUi() {
	
		return ui;
	
	}

	/**
	 * Reset the ui.
	 */
	
	public void setUi(UI ui) {
	
		this.ui = ui;
	
	}
	
	public Printer(SynchronizedQueue readyQueue, SynchronizedQueue printQueue, Memory mem) {
		
		this.readyQueue = readyQueue;
		this.printQueue = printQueue;
		this.mem = mem;
		
	}
	
	public void run() {
		
		DataCell dc = new DataCell();
		PSWCell psw = new PSWCell();
		
		while(true) {
			
			if(printQueue.isEmpty()) {
				try {
					Thread.sleep(500);
					//System.out.println("There is no process in printQueue");
				} catch (InterruptedException e) {
					e.printStackTrace();
				}
			}
			
			else if(!printQueue.isEmpty()) {
				
				int i;
				int index;
				StringTokenizer asm;
				
				String type;
				String arg;
				int n;
				
				ui.clearPrinter();
				
				while(true) {

					try {
						Thread.sleep(1000);
					} catch (InterruptedException e1) {
						e1.printStackTrace();
					}
					
					String temp;
					
					synchronized (mem) {

						synchronized (printQueue) {
							i = printQueue.peek();
						}
						dc.setContent(mem.getMem(i * PCB_SIZE + PC_OFFSET));
						index = dc.getContent();
						System.out.println("index @ printer is " + index);
						temp = mem.getMem(index).toLowerCase();
						asm = new StringTokenizer(temp);
	
					}
					
//					System.out.println(temp);
					
					if(asm.nextToken().compareTo("print") != 0) {
						System.out.println("error0 @ printer");
						break;
					}
					
					type = asm.nextToken();
					
					if(type.compareTo("end") == 0) {
						break;
					}
					
					arg = asm.nextToken();
					System.out.println(arg);
					if(arg.charAt(0) == '#') {
						dc.setContent(arg);
						n = dc.getContent();
					}
					
					else if(arg.charAt(0) == 'r') {
						
						synchronized (mem) {
							
							synchronized (printQueue) {
								i = printQueue.peek();
								System.out.println("printer get process " + i);
								dc.setContent(arg);
								System.out.println("printer get from memory is " + i * PCB_SIZE + REGISTER0_OFFSET + dc.getContent());
								dc.setContent(mem.getMem(i * PCB_SIZE + REGISTER0_OFFSET + dc.getContent()));
								n = dc.getContent();
							}

							
						}
						
					}
					
					else {
						
						synchronized (mem) {

							synchronized (printQueue) {
								i = printQueue.peek();
								System.out.println("printer get process " + i);
								System.out.println("printer get from memory is " + arg);
								dc.setContent(mem.getProcessData(i, Integer.parseInt(arg)));
								n = dc.getContent();
							}
							
						}
						
					}
					
					if(type.compareTo("int") == 0) {
						ui.print(new Integer(n).toString());
					}
					else if(type.compareTo("char") == 0) {
						ui.print("" + (char)n);
					}
					else {
						System.out.println("error2 @ printer");
					}
					
					synchronized (mem) {

						synchronized (printQueue) {
							i = printQueue.peek();
							System.out.println("printer get process " + i);
							dc.setContent(mem.getMem(i * PCB_SIZE + PC_OFFSET));
							index = dc.getContent() + 1;
							mem.setMem(i * PCB_SIZE + PC_OFFSET, '#' + (new Integer(index).toString()));
						}
						
					}
				
				}
				
				//System.out.println("Print: " + printBuffer.toString());
				//System.out.println("process" + i + " print over");
				ui.display("process" + i + " print over");
				
				synchronized (mem) {

					synchronized (printQueue) {
						i = printQueue.dequeue();
					}
					System.out.println("printer get process " + i);
					dc.setContent(mem.getMem(i * PCB_SIZE + PC_OFFSET));
					index = dc.getContent() + 1;
					mem.setMem(i * PCB_SIZE + PC_OFFSET, '#' + (new Integer(index).toString()));
					psw.setState(mem.getMem(i * PCB_SIZE + PSW_OFFSET));
					psw.clearState(UNPRINT_INTERRUPT);
					mem.setMem(i * PCB_SIZE + PSW_OFFSET, psw.toString());
//					System.out.println("Process " + i + " print over");
					readyQueue.inqueue(i);
					
				}
				
			}
			
		}
		
	}

	/**
	 * Return the readyQueue.
	 */
	
	public SynchronizedQueue getReadyQueue() {
	
		return readyQueue;
	
	}

	/**
	 * Reset the readyQueue.
	 */
	
	public void setReadyQueue(SynchronizedQueue readyQueue) {
	
		this.readyQueue = readyQueue;
	
	}

	/**
	 * Return the printQueue.
	 */
	
	public SynchronizedQueue getprintQueue() {
	
		return printQueue;
	
	}

	/**
	 * Reset the printQueue.
	 */
	
	public void setprintQueue(SynchronizedQueue printQueue) {
	
		this.printQueue = printQueue;
	
	}

	/**
	 * Return the mem.
	 */
	
	public Memory getMem() {
	
		return mem;
	
	}

	/**
	 * Reset the mem.
	 */
	
	public void setMem(Memory mem) {
	
		this.mem = mem;
	
	}

}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲国产电影在线观看| 欧美三级资源在线| 奇米影视在线99精品| 亚洲大片一区二区三区| 亚洲无线码一区二区三区| 樱桃国产成人精品视频| 亚洲综合另类小说| 亚洲资源中文字幕| 五月天一区二区三区| 日本三级亚洲精品| 久久99精品久久久久久| 国产在线精品国自产拍免费| 久久99国产精品麻豆| 国产精品综合二区| 丁香婷婷深情五月亚洲| 91网页版在线| 欧美日韩一区成人| 日韩一区二区三区四区| 久久综合九色综合欧美就去吻 | 国产91精品一区二区麻豆网站| 精品一区二区三区在线播放| 国产成人av一区二区| 成人av小说网| 欧美日韩国产在线播放网站| 日韩视频永久免费| 中文字幕国产一区二区| 亚洲男帅同性gay1069| 天天操天天色综合| 国产美女在线精品| 欧美午夜一区二区| xnxx国产精品| 亚洲黄色片在线观看| 日韩中文字幕区一区有砖一区| 国产精品综合视频| 欧美在线视频日韩| 精品国产一区二区三区四区四 | 亚洲天堂成人在线观看| 亚洲一区二区三区影院| 精品在线免费观看| 欧美中文字幕一区| 精品国产一区二区亚洲人成毛片| 中文字幕色av一区二区三区| 美国三级日本三级久久99| 成人91在线观看| 日韩欧美国产1| 一区二区三区日韩欧美精品| 国产精品 欧美精品| 欧美日韩不卡一区| 日韩伦理av电影| 国产精品原创巨作av| 69av一区二区三区| 亚洲三级小视频| 国产成+人+日韩+欧美+亚洲| 制服丝袜激情欧洲亚洲| 亚洲欧美二区三区| 韩国av一区二区三区在线观看| 96av麻豆蜜桃一区二区| 久久蜜臀精品av| 亚洲1区2区3区4区| 欧美少妇bbb| 亚洲免费观看高清完整版在线 | 欧美最猛性xxxxx直播| 国产亚洲欧美日韩日本| 蜜桃视频一区二区| 欧美丰满一区二区免费视频| 亚洲综合在线视频| 色呦呦一区二区三区| 1024国产精品| 成人精品亚洲人成在线| 久久久久国色av免费看影院| 久久精品国产精品亚洲精品| 欧美精品v日韩精品v韩国精品v| 尤物av一区二区| 色婷婷一区二区三区四区| 亚洲欧美自拍偷拍| 成人av网址在线| 国产精品国产三级国产三级人妇 | 欧美亚洲免费在线一区| 亚洲精品中文字幕乱码三区 | 亚洲精品成人在线| av激情综合网| 亚洲欧美视频在线观看| 一本大道久久a久久综合| 夜夜操天天操亚洲| 欧美在线观看视频一区二区| 亚洲午夜久久久久| 欧美乱妇23p| 蜜桃视频在线观看一区| 久久久久久久久99精品| 成人免费视频免费观看| 亚洲免费av高清| 精品视频在线免费观看| 日本不卡中文字幕| 精品蜜桃在线看| 国产成人自拍在线| 亚洲欧美区自拍先锋| 欧美性一二三区| 免费在线一区观看| 国产日韩视频一区二区三区| 成人免费视频国产在线观看| 亚洲综合在线五月| 精品国产一区a| 99久久婷婷国产精品综合| 亚洲一区二区三区爽爽爽爽爽| 精品视频999| 精品一区中文字幕| 亚洲欧洲精品天堂一级| 3d动漫精品啪啪一区二区竹菊| 蜜臀av性久久久久av蜜臀妖精| 久久久av毛片精品| 色婷婷国产精品综合在线观看| 日韩avvvv在线播放| 国产嫩草影院久久久久| 欧美亚洲国产bt| 国产一区欧美日韩| 亚洲精品菠萝久久久久久久| 日韩亚洲欧美成人一区| 波多野结衣亚洲一区| 蜜臀av在线播放一区二区三区 | 在线一区二区三区四区五区| 日韩国产一二三区| 中文字幕日韩精品一区| 精品国产乱码久久久久久牛牛| 99精品欧美一区二区三区小说 | 精品99久久久久久| 欧日韩精品视频| 成人网在线免费视频| 丝瓜av网站精品一区二区| 国产精品久久久久久久久久免费看| 3751色影院一区二区三区| 91视频.com| 国产999精品久久久久久绿帽| 日韩黄色小视频| 一区2区3区在线看| 国产精品家庭影院| 国产午夜亚洲精品理论片色戒| 欧美喷水一区二区| 91成人网在线| 91九色02白丝porn| 91小视频在线免费看| 风间由美一区二区av101| 久久国产剧场电影| 麻豆精品一区二区三区| 亚洲午夜在线视频| 亚洲美女电影在线| 亚洲精品乱码久久久久久| 国产精品久久看| 国产日韩欧美精品电影三级在线| 日韩西西人体444www| 欧美一区二区三区思思人| 欧美精选在线播放| 制服丝袜av成人在线看| 欧美日韩高清在线| 67194成人在线观看| 日韩欧美一区中文| 日韩一区二区不卡| 精品少妇一区二区三区免费观看 | 国产综合成人久久大片91| 青青草国产精品97视觉盛宴| 日本在线播放一区二区三区| 天堂蜜桃一区二区三区| 青草国产精品久久久久久| 蜜桃视频在线观看一区| 国内精品久久久久影院薰衣草| 国产一区二区看久久| 国产不卡在线视频| 91视视频在线直接观看在线看网页在线看| 成人国产一区二区三区精品| 成人av电影在线| 色婷婷久久综合| 欧美美女bb生活片| 日韩精品中午字幕| 欧美激情一区二区三区在线| 中文字幕日韩av资源站| 亚洲在线视频一区| 日本在线不卡视频一二三区| 国产酒店精品激情| 日本韩国一区二区三区视频| 欧美日韩精品一区二区三区四区 | 日日骚欧美日韩| 国产美女精品在线| 91亚洲永久精品| 日韩一区二区免费视频| 国产色产综合产在线视频| 亚洲色图欧洲色图| 麻豆精品蜜桃视频网站| 成人免费观看av| 欧美人体做爰大胆视频| 精品国产人成亚洲区| 亚洲欧美日韩国产成人精品影院| 亚洲444eee在线观看| 成人午夜激情影院| 91精品综合久久久久久| 国产日韩av一区| 日本三级亚洲精品| 在线观看网站黄不卡| 久久久久久久电影| 日本在线观看不卡视频| 日本精品免费观看高清观看| 久久免费偷拍视频|