全パッケージ  クラス階層  このパッケージ  前項目  次項目  インデックス

クラス java.lang.ThreadGroup

java.lang.Object
   |
   +----java.lang.ThreadGroup

public class ThreadGroup
extends Object
スレッドグループは、スレッドの集合を表します。さらに、スレッドグループにはその他のスレッドグループが含まれることもあります。スレッドグループは、最初のスレッドグループを除く各々のスレッドグループが親を持つツリー内で形成されます。

スレッドは、それ自体のスレッドグループについての情報にアクセスすることを許可されていますが、そのスレッドグループの親スレッドグループまたはその他のスレッドグループについての情報にアクセスすることはできません。


Constructor Index

 o ThreadGroup(String)
新規スレッドグループを構築する。
 o ThreadGroup(ThreadGroup, String)
新規スレッドグループを作成する。

Method Index

 o activeCount()
このスレッドグループ内のアクティブスレッドの見積もりを返す。
 o activeGroupCount()
このスレッドグループ内のアクティブグループの見積もりを返す。
 o allowThreadSuspension(boolean)
メモリ不足による暗黙の中断を制御する場合に VM によって使用される。
 o checkAccess()
現在実行中のスレッドがこのスレッドグループを修正する許可を得ているかどうかを確認する。
 o destroy()
このスレッドグループとそのすべてのサブグループを破棄する。
 o enumerate(Thread[])
のスレッドグループとそのサブグループ内のあらゆるアクティブスレッドを指定された配列の中にコピーする。
 o enumerate(Thread[], boolean)
このスレッドグループ内のあらゆるアクティブスレッドを指定された配列の中にコピーする。
 o enumerate(ThreadGroup[])
このスレッドグループ内のあらゆるアクティブサブグループに対する参照を指定された配列の中にコピーする。
 o enumerate(ThreadGroup[], boolean)
このスレッドグループ内のあらゆるアクティブサブグループに対する参照を指定された配列の中にコピーする。
 o getMaxPriority()
このスレッドグループの最高優先順位を返す。
 o getName()
このスレッドグループの名称を返す。
 o getParent()
このスレッドグループの親を返す。
 o isDaemon()
このスレッドグループがデーモンスレッドグループであるかどうかをテストする。
 o isDestroyed()
このスレッドグループが破棄されているかどうかをテストする。
 o list()
このスレッドグループについての情報を標準出力に出力する。
 o parentOf(ThreadGroup)
このスレッドグループがスレッドグループ引数であるのか、またはその先祖スレッドグループの内の 1 つであるのかをテストする。
 o resume()
このスレッドグループ中のすべてのプロセスを再開する。
 o setDaemon(boolean)
このスレッドグループのデーモンの状態を変更する。
 o setMaxPriority(int)
グループの最高優先順位を設定する。
 o stop()
このスレッドグループ内のすべてのプロセスを停止する。
 o suspend()
このスレッドグループ内のすべてのプロセスを中断する。
 o toString()
このスレッドグループの文字列表記を返す。
 o uncaughtException(Thread, Throwable)
このスレッドグループ内のスレッドが、キャッチされていない例外のために停止すると、Java 仮想マシン によって呼び出される。

Constructors

 o ThreadGroup
  public ThreadGroup(String name)
新規スレッドグループを構築します。この新規グループの親が、現在実行中のスレッドのスレッドグループです。

パラメータ:
name - 新規スレッドグループ名
 o ThreadGroup
  public ThreadGroup(ThreadGroup parent,
                     String name)
新規スレッドグループを作成します。この新規グループの親が指定されたスレッドグループです。

親スレッドグループのcheckAccessメソッドは、引数が指定されないで呼び出され、その結果セキュリティ例外が生じることがあります。

パラメータ:
parent - 親スレッドグループ
name - 新規スレッドグループ名
例外: NullPointerException
スレッドグループ引数が null である場合
例外: SecurityException
現在のスレッドが指定されたスレッドグループ内のスレッドを作成できない場合
参照:
SecurityException, checkAccess

Methods

 o getName
  public final String getName()
このスレッドグループの名前を返します。

返り値:
このスレッドグループの名前
 o getParent
  public final ThreadGroup getParent()
このスレッドグループの親を返します。

返り値:
このスレッドグループの親。トップレベルスレッドグループは、親が null であるスレッドグループだけです。
 o getMaxPriority
  public final int getMaxPriority()
このスレッドグループの最高優先順位を返します。このグループの一部であるスレッドに、最高優先順位より高い優先順位を指定することはできません。

返り値:
このスレッドグループ内のスレッドに指定できる最高優先順位
 o isDaemon
  public final boolean isDaemon()
このスレッドグループがデーモンスレッドグループであるかどうかを試験します。デーモンスレッドグループは、その最後のスレッドが停止する場合、または最後のスレッドグループが破壊される場合には自動的に破棄されます。

返り値:
このスレッドグループがデーモンスレッドグループである場合には true 、デーモンスレッドグループではない場合には false
 o isDestroyed
  public synchronized boolean isDestroyed()
このスレッドグループが破棄されているかどうかを試験します。

 o setDaemon
  public final void setDaemon(boolean daemon)
このスレッドグループのデーモンの状態を変更します。

まず、このスレッドグループのcheckAccess メソッドが引数を指定されずに呼び出され、その結果セキュリティ例外が生じることがあります。

デーモンスレッドグループは、その最後のスレッドが停止する場合、またはその最後のスレッドグループが破棄される場合、自動的に破棄されます。

パラメータ:
daemon - true の場合、このスレッドグループをデーモンスレッドグループとしてマークし、true ではない場合は、このスレッドグループを一般のものとしてマークする。
例外: SecurityException
現在のスレッドがこのスレッドを修正できない場合
参照:
SecurityException, checkAccess
 o setMaxPriority
  public final void setMaxPriority(int pri)
グループの最高優先順位を設定します。

最初に、このスレッドグループの checkAccess が、引数を指定されないで呼び出され、その結果セキュリティ例外が生じることがあります。

すでにさらに高い優先順位が指定されているスレッドグループ内のスレッドは影響を受けません。

パラメータ:
pri - スレッドグループの新規優先順位
例外: SecurityException
カレントスレッドが、このスレッドグループを修正できない場合
参照::
SecurityException, checkAccess
 o parentOf
  public final boolean parentOf(ThreadGroup g)
このスレッドグループがスレッドグループ引数であるのか、それともその先祖スレッドグループの内の 1つであるのかを試験します。

パラメータ:
g - スレッドグループ
返り値:
このスレッドグループがスレッドグループ引数であるか、またはその先祖スレッドグループの内の1つである場合には true 、それ以外の場合には false
 o checkAccess
  public final void checkAccess()
現在実行中のスレッドがこのスレッドグループを修正する許可を得ているかどうかを判断します。

セキュリティマネージャが存在する場合、このグループがその引数として指定され、その checkAccess メソッドが呼び出されます。その結果、 SecurityException がスローされることもあります。

例外: SecurityException
現在のスレッドがこのスレッドグループにアクセスできない場合
参照:
checkAccess
 o activeCount
  public int activeCount()
このスレッドグループ内のアクティブスレッドの見積もりを返します。

返り値:
このスレッドグループまたはこのスレッドグループが先祖として指定されるそれ以外のスレッドグループの内のアクティブスレッドの数
 o enumerate
  public int enumerate(Thread list[])
このスレッドグループとそのサブグループ内のあらゆるアクティブスレッドを指定された配列の中にコピーします。

アプリケーションは、配列がどの程度の大きさになるのかについての予想を取得する場合は activeCount メソッドを使用する必要があります。配列が短すぎてすべてのスレッドを保持できない場合、余分なスレッドは無視されます。

パラメータ:
list - スレッドのリストの格納先の配列
返り値:
配列に格納されるスレッド数
参照:
activeCount
 o enumerate
  public int enumerate(Thread list[],
                       boolean recurse)
このスレッドグループ内のあらゆるアクティブスレッドを指定された配列の中にコピーします。 recurse フラグが true である場合、このスレッドのサブグループ内のあらゆるアクティブスレッドに対する参照も含まれます。配列が短すぎてすべてのスレッドを保持できない場合は、余分なスレッドが暗黙に無視されます。

アプリケーションは、配列がどの程度の大きさになるのかについての予想を取得する場合はactiveCount メソッドを使用する必要があります。

パラメータ:
list - スレッドのリストの格納先の配列
recurse - このスレッドグループのサブグループであるスレッドグループ内のスレッドも含むかどうかを示すフラグ
返り値:
配列の中に格納されるスレッド数
参照:
activeCount
 o activeGroupCount
  public int activeGroupCount()
このスレッドグループ内のアクティブグループの見積もりを返します。

返り値:
このスレッドグループが先祖として指定されるアクティブスレッドグループの数
 o enumerate
  public int enumerate(ThreadGroup list[])
このスレッドグループ内のあらゆるアクティブサブグループに対する参照を指定された配列にコピーします。

アプリケーションは、配列がどの程度の大きさになるのかについての予想を取得する場合は、activeGroupCount メソッドを使用する必要があります。配列が短すぎてすべてのスレッドグループを保持できない場合、余分なスレッドグループは無視されます。

パラメータ:
list - スレッドグループのリストの格納先の配列
返り値:
配列に格納されるスレッドグループ数
参照:
activeGroupCount
 o enumerate
  public int enumerate(ThreadGroup list[],
                       boolean recurse)
このスレッドグループ内のあらゆるアクティブサブグループに対する参照を指定された配列にコピーします。recurse フラグがtrueである場合、サブループなどのすべてのアクティブサブグループに対する参照も含まれます。

アプリケーションは、配列がどの程度の大きさになるのかについての予想を取得する場合は、 activeGroupCount メソッドを使用する必要があります。

パラメータ:
list - スレッドのリストの格納先である配列
recurse - 含まれるすべてのスレッドグループを再帰的に列挙するかどうかを示すフラグ
返り値:
配列の中に格納されるスレッドグループ数
参照:
activeGroupCount
 o stop
  public final void stop()
このスレッドグループ内のすべてのプロセスを停止します。

まず、このスレッドグループの checkAccess メソッドが引数を指定されないで呼び出されると、その結果セキュリティ例外が生じることがあります。

すると、このメソッドはこのスレッドグループとそのすべてのサブグループ内のすべてのスレッドに対する 停止 メソッドを呼び出します。

例外: SecurityException
カレントスレッドがこのスレッドグループまたはスレッドグループ内のスレッドのどれかにアクセスを許されない場合
参照:
SecurityException, stop, checkAccess
 o suspend
  public final void suspend()
このスレッドグループ内のすべてのプロセスを中断します。

まず、このスレッドグループの checkAccess メソッドが引数を指定されないで呼び出され、その結果セキュリティ例外が生じることがあります。

すると、このメソッドは、このスレッドグループとそのすべてのサブグループ内のすべてのスレッドに対する suspend メソッドを呼び出します。

例外: SecurityException
カレントスレッドが、このスレッドグループまたはスレッドグループ内のスレッドのどれにもアクセスできない場合
参照:
SecurityException, suspend, checkAccess
 o resume
  public final void resume()
このスレッドグループ内のすべてのプロセスを再開します。

まず、このスレッドグループの checkAccess メソッドが引数を指定されないで呼び出され、その結果セキュリティ例外が生じることがあります。

すると、このメソッドは、このスレッドグループとそのすべてのサブグループ内のすべてのスレッドに対する resume メソッドを呼び出します。

例外: SecurityException
カレントスレッドがこのスレッドグループまたはスレッドグループ内のスレッドのどれにもアクセスできない場合
参照:
SecurityException, resume, checkAccess
 o destroy
  public final void destroy()
このスレッドグループとそのサブグループのすべてを破棄します。このスレッドグループは空となり、このスレッドグループ内にあったすべてのスレッドがそれ以降停止しているかどうかを示さなければなりません。

例外: IllegalThreadStateException
スレッドグループが空である場合、またはスレッドグループがすでに破棄されている場合
例外: SecurityException
カレントスレッドがこのスレッドグループを修正できない場合
 o list
  public void list()
このスレッドグループについての情報を標準出力に出力します。このメソッドはデバッグの場合にだけ有効です。

 o uncaughtException
  public void uncaughtException(Thread t,
                                Throwable e)
このスレッドグループ内のスレッドが、キャッチされていない例外のために停止すると、Java 仮想マシン によって呼び出されます。

ThreadGroupuncaughtException メソッドは以下を実行します。

アプリケーションは、キャッチされていない例外を別の方法で処理するために、 ThreadGroup のサブクラス内のこのメソッドを無効にできます。

パラメータ:
t - 終了するところであるスレッド
e - キャッチされていない例外
参照:
err, ThreadDeath, printStackTrace
 o allowThreadSuspension
  public boolean allowThreadSuspension(boolean b)
メモリ不足による暗黙の中断を制御するために VM によって使用されます。

 o toString
  public String toString()
このスレッドグループの文字列表記を返します。

返り値:
このスレッドグループの文字列表記
オーバーライド:
クラス ObjecttoString

全パッケージ  クラス階層  このパッケージ  前項目  次項目  インデックス