ThreadGroup (Java SE 9 JDK 9 )()

  本篇文章为你整理了ThreadGroup (Java SE 9 & JDK 9 )()的详细内容,包含有 ThreadGroup (Java SE 9 & JDK 9 ),希望能帮助你了解 ThreadGroup (Java SE 9 & JDK 9 )。

  

public class ThreadGroup

 

  extends Object

  implements Thread.UncaughtExceptionHandler

 

  A thread group represents a set of threads. In addition, a thread

   group can also include other thread groups. The thread groups form

   a tree in which every thread group except the initial thread group

   has a parent.

   A thread is allowed to access information about its own thread

   group, but not to access information about its thread groups

   parent thread group or any other thread groups.

  Since:

  
Returns an estimate of the number of active threads in this thread

   group and its subgroups.

  
activeGroupCount ()

  Returns an estimate of the number of active groups in this

   thread group and its subgroups.

  
boolean

  allowThreadSuspension (booleanb)

  Deprecated.

  The definition of this call depends on suspend(),

   which is deprecated. Further, the behavior of this call

   was never specified.

  
enumerate (Thread[]list)

  Copies into the specified array every active thread in this

   thread group and its subgroups.

  
enumerate (Thread[]list,

   booleanrecurse)

  Copies into the specified array every active thread in this

   thread group.

  
enumerate (ThreadGroup[]list)

  Copies into the specified array references to every active

   subgroup in this thread group and its subgroups.

  
enumerate (ThreadGroup[]list,

   booleanrecurse)

  Copies into the specified array references to every active

   subgroup in this thread group.

  
boolean

  parentOf (ThreadGroupg)

  Tests if this thread group is either the thread group

   argument or one of its ancestor thread groups.

  
Thread.suspend and ThreadGroup.suspend,

   both of which have been deprecated, as they are inherently

   deadlock-prone. See Thread.suspend() for details.

  
setDaemon (booleandaemon)

  Changes the daemon status of this thread group.

  
setMaxPriority (intpri)

  Sets the maximum priority of the group.

  
This method is inherently unsafe. See

   Thread.stop() for details.

  
This method is inherently deadlock-prone. See

   Thread.suspend() for details.

  
ThreadGroup

  

publicThreadGroup (Stringname)

 

  Constructs a new thread group. The parent of this new group is

   the thread group of the currently running thread.

   The checkAccess method of the parent thread group is

   called with no arguments; this may result in a security exception.

  Parameters:

  name - the name of the new thread group.

  Throws:

  SecurityException - if the current thread cannot create a

   thread in the specified thread group.

  Since:

  See Also:

  checkAccess()

  
ThreadGroup

  

publicThreadGroup (ThreadGroupparent,

 

   Stringname)

 

  Creates a new thread group. The parent of this new group is the

   specified thread group.

   The checkAccess method of the parent thread group is

   called with no arguments; this may result in a security exception.

  Parameters:

  parent - the parent thread group.

  name - the name of the new thread group.

  Throws:

  NullPointerException - if the thread group argument is

   null.

  SecurityException - if the current thread cannot create a

   thread in the specified thread group.

  Since:

  See Also:

  SecurityException,

  checkAccess()

  
getName

  

public finalStringgetName ()

 

  Returns the name of this thread group.

  Returns:

  the name of this thread group.

  Since:

  
getParent

  

public finalThreadGroupgetParent ()

 

  Returns the parent of this thread group.

   First, if the parent is not null, the

   checkAccess method of the parent thread group is

   called with no arguments; this may result in a security exception.

  Returns:

  the parent of this thread group. The top-level thread group

   is the only thread group whose parent is null.

  Throws:

  SecurityException - if the current thread cannot modify

   this thread group.

  Since:

  See Also:

  checkAccess(),

  SecurityException,

  RuntimePermission

  


public finalintgetMaxPriority ()

 

  Returns the maximum priority of this thread group. Threads that are

   part of this group cannot have a higher priority than the maximum

   priority.

  Returns:

  the maximum priority that a thread in this thread group

   can have.

  Since:

  See Also:

  setMaxPriority(int)

  


public finalbooleanisDaemon ()

 

  Tests if this thread group is a daemon thread group. A

   daemon thread group is automatically destroyed when its last

   thread is stopped or its last thread group is destroyed.

  Returns:

  true if this thread group is a daemon thread group;

   false otherwise.

  Since:

  


publicbooleanisDestroyed ()

 

  Tests if this thread group has been destroyed.

  Returns:

  true if this object is destroyed

  Since:

  


public finalvoidsetDaemon (booleandaemon)

 

  Changes the daemon status of this thread group.

   First, the checkAccess method of this thread group is

   called with no arguments; this may result in a security exception.

   A daemon thread group is automatically destroyed when its last

   thread is stopped or its last thread group is destroyed.

  Parameters:

  daemon - if true, marks this thread group as

   a daemon thread group; otherwise, marks this

   thread group as normal.

  Throws:

  SecurityException - if the current thread cannot modify

   this thread group.

  Since:

  See Also:

  SecurityException,

  checkAccess()

  


public finalvoidsetMaxPriority (intpri)

 

  Sets the maximum priority of the group. Threads in the thread

   group that already have a higher priority are not affected.

   First, the checkAccess method of this thread group is

   called with no arguments; this may result in a security exception.

   If the pri argument is less than

   Thread.MIN_PRIORITY or greater than

   Thread.MAX_PRIORITY, the maximum priority of the group

   remains unchanged.

   Otherwise, the priority of this ThreadGroup object is set to the

   smaller of the specified pri and the maximum permitted

   priority of the parent of this thread group. (If this thread group

   is the system thread group, which has no parent, then its maximum

   priority is simply set to pri.) Then this method is

   called recursively, with pri as its argument, for

   every thread group that belongs to this thread group.

  Parameters:

  pri - the new priority of the thread group.

  Throws:

  SecurityException - if the current thread cannot modify

   this thread group.

  Since:

  See Also:

  getMaxPriority(),

  SecurityException,

  checkAccess()

  
parentOf

  

public finalbooleanparentOf (ThreadGroupg)

 

  Tests if this thread group is either the thread group

   argument or one of its ancestor thread groups.

  Parameters:

  g - a thread group.

  Returns:

  true if this thread group is the thread group

   argument or one of its ancestor thread groups;

   false otherwise.

  Since:

  


public finalvoidcheckAccess ()

 

  Determines if the currently running thread has permission to

   modify this thread group.

   If there is a security manager, its checkAccess method

   is called with this thread group as its argument. This may result

   in throwing a SecurityException.

  Throws:

  SecurityException - if the current thread is not allowed to

   access this thread group.

  Since:

  See Also:

  SecurityManager.checkAccess(java.lang.ThreadGroup)

  


publicintactiveCount ()

 

  Returns an estimate of the number of active threads in this thread

   group and its subgroups. Recursively iterates over all subgroups in

   this thread group.

   The value returned is only an estimate because the number of

   threads may change dynamically while this method traverses internal

   data structures, and might be affected by the presence of certain

   system threads. This method is intended primarily for debugging

   and monitoring purposes.

  Returns:

  an estimate of the number of active threads in this thread

   group and in any other thread group that has this thread

   group as an ancestor

  Since:

  
enumerate

  

publicintenumerate (Thread[]list)

 

  Copies into the specified array every active thread in this

   thread group and its subgroups.

   An invocation of this method behaves in exactly the same

   way as the invocation

  
enumerate

  

publicintenumerate (Thread[]list,

 

   booleanrecurse)

 

  Copies into the specified array every active thread in this

   thread group. If recurse is true,

   this method recursively enumerates all subgroups of this

   thread group and references to every active thread in these

   subgroups are also included. If the array is too short to

   hold all the threads, the extra threads are silently ignored.

   An application might use the activeCount

   method to get an estimate of how big the array should be, however

   if the array is too short to hold all the threads, the extra threads

   are silently ignored. If it is critical to obtain every active

   thread in this thread group, the caller should verify that the returned

   int value is strictly less than the length of list.

   Due to the inherent race condition in this method, it is recommended

   that the method only be used for debugging and monitoring purposes.

  Parameters:

  list - an array into which to put the list of threads

  recurse - if true, recursively enumerate all subgroups of this

   thread group

  Returns:

  the number of threads put into the array

  Throws:

  SecurityException - if checkAccess determines that

   the current thread cannot access this thread group

  Since:

  


publicintactiveGroupCount ()

 

  Returns an estimate of the number of active groups in this

   thread group and its subgroups. Recursively iterates over

   all subgroups in this thread group.

   The value returned is only an estimate because the number of

   thread groups may change dynamically while this method traverses

   internal data structures. This method is intended primarily for

   debugging and monitoring purposes.

  Returns:

  the number of active thread groups with this thread group as

   an ancestor

  Since:

  
enumerate

  

publicintenumerate (ThreadGroup[]list)

 

  Copies into the specified array references to every active

   subgroup in this thread group and its subgroups.

   An invocation of this method behaves in exactly the same

   way as the invocation

  
enumerate

  

publicintenumerate (ThreadGroup[]list,

 

   booleanrecurse)

 

  Copies into the specified array references to every active

   subgroup in this thread group. If recurse is

   true, this method recursively enumerates all subgroups of this

   thread group and references to every active thread group in these

   subgroups are also included.

   An application might use the

   activeGroupCount method to

   get an estimate of how big the array should be, however if the

   array is too short to hold all the thread groups, the extra thread

   groups are silently ignored. If it is critical to obtain every

   active subgroup in this thread group, the caller should verify that

   the returned int value is strictly less than the length of

   list.

   Due to the inherent race condition in this method, it is recommended

   that the method only be used for debugging and monitoring purposes.

  Parameters:

  list - an array into which to put the list of thread groups

  recurse - if true, recursively enumerate all subgroups

  Returns:

  the number of thread groups put into the array

  Throws:

  SecurityException - if checkAccess determines that

   the current thread cannot access this thread group

  Since:

  


@Deprecated(since="1.2")

 

  public finalvoidstop ()

 

  Deprecated.This method is inherently unsafe. See

   Thread.stop() for details.

  Stops all threads in this thread group.

   First, the checkAccess method of this thread group is

   called with no arguments; this may result in a security exception.

   This method then calls the stop method on all the

   threads in this thread group and in all of its subgroups.

  Throws:

  SecurityException - if the current thread is not allowed

   to access this thread group or any of the threads in

   the thread group.

  Since:

  See Also:

  SecurityException,

  Thread.stop(),

  checkAccess()

  


public finalvoidinterrupt ()

 

  Interrupts all threads in this thread group.

   First, the checkAccess method of this thread group is

   called with no arguments; this may result in a security exception.

   This method then calls the interrupt method on all the

   threads in this thread group and in all of its subgroups.

  Throws:

  SecurityException - if the current thread is not allowed

   to access this thread group or any of the threads in

   the thread group.

  Since:

  See Also:

  Thread.interrupt(),

  SecurityException,

  checkAccess()

  
suspend

  

@Deprecated(since="1.2")

 

  public finalvoidsuspend ()

 

  Deprecated.This method is inherently deadlock-prone. See

   Thread.suspend() for details.

  Suspends all threads in this thread group.

   First, the checkAccess method of this thread group is

   called with no arguments; this may result in a security exception.

   This method then calls the suspend method on all the

   threads in this thread group and in all of its subgroups.

  Throws:

  SecurityException - if the current thread is not allowed

   to access this thread group or any of the threads in

   the thread group.

  Since:

  See Also:

  Thread.suspend(),

  SecurityException,

  checkAccess()

  
resume

  

@Deprecated(since="1.2")

 

  public finalvoidresume ()

 

  Deprecated.This method is used solely in conjunction with

   Thread.suspend and ThreadGroup.suspend,

   both of which have been deprecated, as they are inherently

   deadlock-prone. See Thread.suspend() for details.

  Resumes all threads in this thread group.

   First, the checkAccess method of this thread group is

   called with no arguments; this may result in a security exception.

   This method then calls the resume method on all the

   threads in this thread group and in all of its sub groups.

  Throws:

  SecurityException - if the current thread is not allowed to

   access this thread group or any of the threads in the

   thread group.

  Since:

  See Also:

  SecurityException,

  Thread.resume(),

  checkAccess()

  


public finalvoiddestroy ()

 

  Destroys this thread group and all of its subgroups. This thread

   group must be empty, indicating that all threads that had been in

   this thread group have since stopped.

   First, the checkAccess method of this thread group is

   called with no arguments; this may result in a security exception.

  Throws:

  IllegalThreadStateException - if the thread group is not

   empty or if the thread group has already been destroyed.

  SecurityException - if the current thread cannot modify this

   thread group.

  Since:

  See Also:

  checkAccess()

  


publicvoidlist ()

 

  Prints information about this thread group to the standard

   output. This method is useful only for debugging.

  Since:

  
uncaughtException

  

publicvoiduncaughtException (Threadt,

 

   Throwablee)

 

  Called by the Java Virtual Machine when a thread in this

   thread group stops because of an uncaught exception, and the thread

   does not have a specific Thread.UncaughtExceptionHandler

   installed.

   The uncaughtException method of

   ThreadGroup does the following:

   If this thread group has a parent thread group, the

   uncaughtException method of that parent is called

   with the same two arguments.

   Otherwise, this method checks to see if there is a

   default uncaught exception handler installed, and if so, its

   uncaughtException method is called with the same

   two arguments.

   Otherwise, this method determines if the Throwable

   argument is an instance of ThreadDeath. If so, nothing

   special is done. Otherwise, a message containing the

   threads name, as returned from the threads getName method, and a stack backtrace,

   using the Throwables printStackTrace method, is

   printed to the standard error stream.

   Applications can override this method in subclasses of

   ThreadGroup to provide alternative handling of

   uncaught exceptions.

  Specified by:

  uncaughtExceptionin interfaceThread.UncaughtExceptionHandler

  Parameters:

  t - the thread that is about to exit.

  e - the uncaught exception.

  Since:

  
allowThreadSuspension

  

@Deprecated(since="1.2")

 

  publicbooleanallowThreadSuspension (booleanb)

 

  Deprecated.The definition of this call depends on suspend(),

   which is deprecated. Further, the behavior of this call

   was never specified.

  Used by VM to control lowmem implicit suspension.

  Parameters:

  b - boolean to allow or disallow suspension

  Returns:

  true on success

  Since:

  
Scripting on this page tracks web page traffic, but does not change the content in any way.

  以上就是ThreadGroup (Java SE 9 & JDK 9 )()的详细内容,想要了解更多 ThreadGroup (Java SE 9 & JDK 9 )的内容,请持续关注盛行IT软件开发工作室。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: