scheduler.java

来自「这个是我做j2ee培训时候自己整理和编写的设计模式的学习例子」· Java 代码 · 共 36 行

JAVA
36
字号
package org.hyq.observer1;

import java.util.LinkedList;
import java.util.Queue;

public class Scheduler extends Thread {

	private Queue<Action> actions = new LinkedList<Action>();
	private boolean isRunning = true;

	@Override
	public synchronized void run() {
		while (isRunning) {
			while (!actions.isEmpty()) {
				Action action = actions.remove();
				action.observer.doAction(action.observable, action.arg);
			}
			try {
				wait();
			} catch (InterruptedException ex) {
			}
		}
	}

	void addAction(Action action) {
		if (isRunning) {
			actions.add(action);
		}
	}

	void setStopFlag() {
		isRunning = false;
	}

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?