|
|||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
java.lang
类 ThreadGroup
java.lang.Object java.lang.ThreadGroup
- 所有已实现的接口:
- Thread.UncaughtExceptionHandler
-
public class ThreadGroup
- extends Object
- implements Thread.UncaughtExceptionHandler
线程组表示一个线程的集合。此外,线程组也可以包含其他线程组。线程组构成一棵树,在树中,除了初始线程组外,每个线程组都有一个父线程组。
允许线程访问有关自己的线程组的信息,但是不允许它访问有关其线程组的父线程组或其他任何线程组的信息。
- 从以下版本开始:
- JDK1.0
构造方法摘要 | |
---|---|
ThreadGroup(String name) 构造一个新线程组。 |
|
ThreadGroup(ThreadGroup parent, String name) 创建一个新线程组。 |
方法摘要 | |
---|---|
int |
activeCount() 返回此线程组中活动线程的估计数。 |
int |
activeGroupCount() 返回此线程组中活动线程组的估计数。 |
boolean |
allowThreadSuspension(boolean b) 已过时。 此调用的定义取决于 suspend() ,它被废弃了。更进一步地说,此调用的行为从不被指定。 |
void |
checkAccess() 确定当前运行的线程是否有权修改此线程组。 |
void |
destroy() 销毁此线程组及其所有子组。 |
int |
enumerate(Thread[] list) 把此线程组及其子组中的所有活动线程复制到指定数组中。 |
int |
enumerate(Thread[] list, boolean recurse) 把此线程组中的所有活动线程复制到指定数组中。 |
int |
enumerate(ThreadGroup[] list) 把对此线程组中的所有活动子组的引用复制到指定数组中。 |
int |
enumerate(ThreadGroup[] list, boolean recurse) 把对此线程组中的所有活动子组的引用复制到指定数组中。 |
int |
getMaxPriority() 返回此线程组的最高优先级。 |
String |
getName() 返回此线程组的名称。 |
ThreadGroup |
getParent() 返回此线程组的父线程组。 |
void |
interrupt() 中断此线程组中的所有线程。 |
boolean |
isDaemon() 测试此线程组是否为一个后台程序线程组。 |
boolean |
isDestroyed() 测试此线程组是否已经被销毁。 |
void |
list() 将有关此线程组的信息输出到标准输出。 |
boolean |
parentOf(ThreadGroup g) 测试此线程组是否为线程组参数或其祖先线程组之一。 |
void |
resume() 已过时。 此方法只用于联合 Thread.suspend 和 ThreadGroup.suspend 时,因为它们所固有的容易导致死锁的特性,所以两者都已废弃。有关详细信息,请参阅 Thread.suspend() 。 |
void |
setDaemon(boolean daemon) 更改此线程组的后台程序状态。 |
void |
setMaxPriority(int pri) 设置线程组的最高优先级。 |
void |
stop() 已过时。 此方法具有固有的不安全性。有关详细信息,请参阅 Thread.stop() 。 |
void |
suspend() 已过时。 此方法容易导致死锁。有关详细信息,请参阅 Thread.suspend() 。 |
String |
toString() 返回此线程组的字符串表示形式。 |
void |
uncaughtException(Thread t, Throwable e) 当此线程组中的线程因为一个未捕获的异常而停止,并且线程没有安装特定 Thread.UncaughtExceptionHandler 时,由 Java Virtual Machine 调用此方法。 |
从类 java.lang.Object 继承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
构造方法详细信息 |
---|
ThreadGroup
public ThreadGroup(String name)
-
构造一个新线程组。新线程组的父线程组是目前正在运行线程的线程组。
不使用任何参数调用父线程组的
checkAccess
方法;这可能导致一个安全性异常。- 参数:
-
name
- 新线程组的名称。 - 抛出:
-
SecurityException
- 如果当前线程不能在指定的线程组中创建线程。 - 从以下版本开始:
- JDK1.0
- 另请参见:
-
checkAccess()
ThreadGroup
public ThreadGroup(ThreadGroup parent, String name)
-
创建一个新线程组。新线程组的父线程组是指定的线程组。
不使用任何参数调用父线程组的
checkAccess
方法;这可能导致一个安全性异常。- 参数:
-
parent
- 父线程组。 -
name
- 新线程组的名称。 - 抛出:
-
NullPointerException
- 如果线程组参数为null
。 -
SecurityException
- 如果当前线程不能在指定的线程组中创建线程。 - 从以下版本开始:
- JDK1.0
- 另请参见:
-
SecurityException
,checkAccess()
方法详细信息 |
---|
getName
public final String getName()
- 返回此线程组的名称。
-
-
- 返回:
- 此线程组的名称。
- 从以下版本开始:
- JDK1.0
getParent
public final ThreadGroup getParent()
-
返回此线程组的父线程组。
首先,如果父线程组不为
null
,则不使用任何参数直接调用父线程组的checkAccess
方法;这可能导致一个安全性异常。 -
-
- 返回:
-
线程组的父线程组。顶级线程组仅为那些父线程组为
null
的线程组。 - 抛出:
-
SecurityException
- 如果当前线程无法修改此线程组。 - 从以下版本开始:
- JDK1.0
- 另请参见:
-
checkAccess()
,SecurityException
,RuntimePermission
getMaxPriority
public final int getMaxPriority()
- 返回此线程组的最高优先级。作为此线程组一部分的线程不能拥有比最高优先级更高的优先级。
-
-
- 返回:
- 此线程组中的线程可拥有的最高优先级。
- 从以下版本开始:
- JDK1.0
- 另请参见:
-
setMaxPriority(int)
isDaemon
public final boolean isDaemon()
- 测试此线程组是否为一个后台程序线程组。在停止后台程序线程组的最后一个线程或销毁其最后一个线程组时,自动销毁这个后台程序线程组。
-
-
- 返回:
-
如果此线程组是一个后台程序线程组,则返回
true
;否则返回false
。 - 从以下版本开始:
- JDK1.0
isDestroyed
public boolean isDestroyed()
- 测试此线程组是否已经被销毁。
-
-
- 返回:
- 如果此对象被销毁,则返回 true
- 从以下版本开始:
- JDK1.1
setDaemon
public final void setDaemon(boolean daemon)
-
更改此线程组的后台程序状态。
首先,不使用任何参数调用此线程组的
checkAccess
方法;这可能导致一个安全性异常。在停止后台程序线程组的最后一个线程或销毁其最后一个线程组时,自动销毁此后台程序线程组。
-
-
- 参数:
-
daemon
- 如果为true
,则表示此线程组是一个后台程序线程组;否则,表示此线程组是一个普通线程组。 - 抛出:
-
SecurityException
- 如果当前线程无法修改此线程组。 - 从以下版本开始:
- JDK1.0
- 另请参见:
-
SecurityException
,checkAccess()