⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 threadnameargument.java

📁 纯java操作系统jnode,安装简单和操作简单的个人使用的Java操作系统
💻 JAVA
字号:
/*
 * $Id: ThreadNameArgument.java,v 1.1 2003/11/25 11:52:58 epr Exp $
 */
package org.jnode.shell.help;

import java.util.ArrayList;
import java.util.List;

/**
 * @author Ewout Prangsma (epr@users.sourceforge.net)
 */
public class ThreadNameArgument extends Argument {

	public ThreadNameArgument(String name, String description, boolean multi) {
		super(name, description, multi);
	}

	public ThreadNameArgument(String name, String description) {
		super(name, description);
	}

	public String complete(String partial) {
		ArrayList names = new ArrayList();
		ThreadGroup grp = Thread.currentThread().getThreadGroup();
		while (grp.getParent() != null) {
			grp = grp.getParent();
		}
		findList(grp, partial, names);

		return complete(partial, names);
	}

	private void findList(ThreadGroup grp, String partial, List names) {
		final int cnt = grp.activeCount();
		final Thread[] ts = new Thread[cnt];
		grp.enumerate(ts);
		for (int i = 0; i < cnt; i++) {
			final Thread t = ts[i];
			if (t != null) {
				final String name = t.getName();
				if (name.startsWith(partial)) {
					names.add(name);
				}
			}
		}
		final int gcnt = grp.activeGroupCount();
		final ThreadGroup[] gs = new ThreadGroup[gcnt];
		grp.enumerate(gs);
		for (int i = 0; i < gcnt; i++) {
			final ThreadGroup g = gs[i];
			if (g != null) {
				findList(g, partial, names);
			}
		}
	}
}

⌨️ 快捷键说明

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