所有类


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.suspendThreadGroup.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()

微信小程序

微信扫一扫体验

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部