watchthread.java

来自「华为CNGP.CMPP.SGIP.CMPP源代码。」· Java 代码 · 共 44 行

JAVA
44
字号
package com.huawei.insa2.util;

public abstract class WatchThread extends Thread {

	public WatchThread(String name) {
		super(tg, name);
		alive = true;
		state = "unknown";
		setDaemon(true);
	}

	public void kill() {
		alive = false;
	}

	public final void run() {
		while (alive)
			try {
				task();
			} catch (Exception ex) {
				ex.printStackTrace();
			} catch (Throwable t) {
				t.printStackTrace();
			}
	}

	protected void setState(String newState) {
		state = newState;
	}

	public String getWatchState() {
		return state;
	}

	protected abstract void task();

	private boolean alive;

	private String state;

	public static final ThreadGroup tg = new ThreadGroup("watch-thread");

}

⌨️ 快捷键说明

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