|
JavaTM 2 Platform Std. Ed. v1.4.0 |
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object | +--java.lang.ThreadGroup
スレッドグループは、スレッドの集合を表します。さらに、スレッドグループにはほかのスレッドグループが含まれることもあります。スレッドグループは木を形成し、最初のスレッドグループを除いてその中で親を持ちます。
スレッドは、それ自体のスレッドグループについての情報にアクセスすることを許可されていますが、そのスレッドグループの親スレッドグループまたはその他のスレッドグループについての情報にアクセスすることはできません。
コンストラクタの概要 | |
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)
このスレッドグループがスレッドグループ引数であるか、あるいはその上位スレッドグループの内の 1 つであるかどうかを判定します。 |
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()
この ThreadGroup の文字列表現を返します。 |
void |
uncaughtException(Thread t,
Throwable e)
このスレッドグループ内のスレッドが、キャッチされていない例外のために停止すると、Java 仮想マシンによって呼び出されます。 |
クラス java.lang.Object から継承したメソッド |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
コンストラクタの詳細 |
public ThreadGroup(String name)
親スレッドグループの checkAccess
メソッドは、引数なしで呼び出されます。この結果、セキュリティ例外が発生することがあります。
name
- 新しいスレッドグループの名前
SecurityException
- 現在のスレッドが、指定されたスレッドグループ内のスレッドを作成できない場合checkAccess()
public ThreadGroup(ThreadGroup parent, String name)
親スレッドグループの checkAccess
メソッドは、引数なしで呼び出されます。この結果、セキュリティ例外が発生することがあります。
parent
- 親のスレッドグループname
- 新しいスレッドグループの名前
NullPointerException
- スレッドグループの引数が null
の場合
SecurityException
- 現在のスレッドが、指定されたスレッドグループ内のスレッドを作成できない場合SecurityException
,
checkAccess()
メソッドの詳細 |
public final String getName()
public final ThreadGroup getParent()
親が null
でない場合、最初に親スレッドグループの checkAccess
メソッドが引数なしで呼び出されます。この結果、セキュリティ例外がスローされることがあります。
null
であるスレッドグループは、トップレベルのスレッドグループだけです
SecurityException
- 現在のスレッドがこのスレッドグループを変更できない場合checkAccess()
,
SecurityException
,
RuntimePermission
public final int getMaxPriority()
setMaxPriority(int)
public final boolean isDaemon()
true
、そうでない場合は false
public boolean isDestroyed()
public final void setDaemon(boolean daemon)
まず、このスレッドグループの checkAccess
メソッドが引数なしで呼び出されます。この結果、セキュリティ例外がスローされることがあります。
デーモンスレッドグループは、その最後のスレッドが停止する場合、またはその最後のスレッドグループが破棄される場合に自動的に破棄されます。
daemon
- true
の場合は、このスレッドグループをデーモンスレッドグループとしてマークし、そうでない場合は、このスレッドグループを一般のものとしてマークする
SecurityException
- 現在のスレッドがこのスレッドグループを変更できない場合SecurityException
,
checkAccess()
public final void setMaxPriority(int pri)
まず、このスレッドグループの checkAccess
メソッドが引数なしで呼び出されます。この結果、セキュリティ例外がスローされることがあります。
pri
引数の値が Thread.MIN_PRIORITY
より小さいか、 Thread.MAX_PRIORITY
より大きい場合、グループの最高優先順位は変更されません。
それ以外の場合、この ThreadGroup オブジェクトの優先順位は、指定された pri
およびこのスレッドグループの親に許可される最高優先順位より低く設定されます (このスレッドグループが、親を持たないシステムスレッドグループの場合、その最高優先順位は pri
だけに設定される)。その後、このスレッドグループに属するスレッドグループごとに、このメソッドが pri
を引数として再帰的に呼び出されます。
pri
- スレッドグループの新しい優先順位
SecurityException
- 現在のスレッドがこのスレッドグループを変更できない場合getMaxPriority()
,
SecurityException
,
checkAccess()
public final boolean parentOf(ThreadGroup g)
g
- スレッドグループ
true
、そうでない場合は false
public final void checkAccess()
セキュリティマネージャが存在する場合、このグループがその引数として指定され、その checkAccess
メソッドが呼び出されます。その結果、SecurityException
がスローされることがあります。
SecurityException
- 現在のスレッドがこのスレッドグループへのアクセスを許されていない場合SecurityManager.checkAccess(java.lang.ThreadGroup)
public int activeCount()
public int enumerate(Thread[] list)
まず、このスレッドグループの checkAccess
メソッドが引数なしで呼び出されます。この結果、セキュリティ例外がスローされることがあります。
アプリケーションは、配列をどの程度の大きさになるかについてのおおよその数を取得する場合は activeCount
メソッドを使用する必要があります。配列が小さすぎてすべてのスレッドを保持できない場合、余分なスレッドは通知なしに無視されます。
list
- スレッドのリストの格納先である配列
SecurityException
- 現在のスレッドに、このスレッドグループを列挙するためのアクセス権がない場合activeCount()
,
checkAccess()
public int enumerate(Thread[] list, boolean recurse)
recurse
フラグが true
である場合、このスレッドのサブグループ内の各アクティブスレッドへの参照も含まれます。配列が小さすぎてすべてのスレッドを保持できない場合、余分なスレッドは通知なしに無視されます。
まず、このスレッドグループの checkAccess
メソッドが引数なしで呼び出されます。この結果、セキュリティ例外がスローされることがあります。
アプリケーションは、配列がどの程度の大きさになるかについてのおおよその数を取得する場合は activeCount
メソッドを使用する必要があります。
list
- スレッドのリストの格納先である配列recurse
- このスレッドグループのサブグループであるスレッドグループ内のスレッドも含むかどうかを示すフラグ
SecurityException
- 現在のスレッドに、このスレッドグループを列挙するためのアクセス権がない場合activeCount()
,
checkAccess()
public int activeGroupCount()
public int enumerate(ThreadGroup[] list)
まず、このスレッドグループの checkAccess
メソッドが引数なしで呼び出されます。この結果、セキュリティ例外がスローされることがあります。
アプリケーションは、配列がどの程度の大きさになるのかについてのおおよその数を取得する場合は、activeGroupCount
メソッドを使用する必要があります。配列が小さすぎてすべてのスレッドグループを保持できない場合、余分なスレッドグループは通知なしに無視されます。
list
- スレッドグループのリストの格納先の配列
SecurityException
- 現在のスレッドに、このスレッドグループを列挙するためのアクセス権がない場合activeGroupCount()
,
checkAccess()
public int enumerate(ThreadGroup[] list, boolean recurse)
recurse
フラグが true
である場合、サブグループなどのすべてのアクティブサブグループへの参照も含まれます。
まず、このスレッドグループの checkAccess
メソッドが引数なしで呼び出されます。この結果、セキュリティ例外がスローされることがあります。
アプリケーションは、配列がどの程度の大きさになるのかについてのおおよその数を取得する場合は、activeGroupCount
メソッドを使用する必要があります。
list
- スレッドのリストの格納先である配列recurse
- 含まれるすべてのスレッドグループを再帰的に列挙するかどうかを示すフラグ
SecurityException
- 現在のスレッドに、このスレッドグループを列挙するためのアクセス権がない場合activeGroupCount()
,
checkAccess()
public final void stop()
Thread.stop()
を参照してください。
まず、このスレッドグループの checkAccess
メソッドが引数なしで呼び出されます。この結果、セキュリティ例外がスローされることがあります。
次にこのメソッドは、このスレッドグループとそのすべてのサブグループ内のすべてのスレッドについて stop
メソッドを呼び出します。
SecurityException
- 現在のスレッドが、このスレッドグループまたはスレッドグループ内のスレッドへのアクセスを許可されない場合SecurityException
,
Thread.stop()
,
checkAccess()
public final void interrupt()
まず、このスレッドグループの checkAccess
メソッドが引数なしで呼び出されます。この結果、セキュリティ例外がスローされることがあります。
次にこのメソッドは、このスレッドグループとそのすべてのサブグループ内のすべてのスレッドについて interrupt
メソッドを呼び出します。
SecurityException
- 現在のスレッドが、このスレッドグループまたはスレッドグループ内のスレッドへのアクセスを許可されない場合Thread.interrupt()
,
SecurityException
,
checkAccess()
public final void suspend()
Thread.suspend()
を参照してください。
まず、このスレッドグループの checkAccess
メソッドが引数なしで呼び出されます。この結果、セキュリティ例外がスローされることがあります。
次にこのメソッドは、このスレッドグループとそのすべてのサブグループ内のすべてのスレッドについて suspend
メソッドを呼び出します。
SecurityException
- 現在のスレッドが、このスレッドグループまたはスレッドグループ内のスレッドへのアクセスを許可されない場合Thread.suspend()
,
SecurityException
,
checkAccess()
public final void resume()
Thread.suspend()
を参照してください。
まず、このスレッドグループの checkAccess
メソッドが引数なしで呼び出されます。この結果、セキュリティ例外がスローされることがあります。
次にこのメソッドは、このスレッドグループとそのすべてのサブグループ内のすべてのスレッドについて resume
メソッドを呼び出します。
SecurityException
- 現在のスレッドが、このスレッドグループまたはスレッドグループ内のスレッドへのアクセスを許可されない場合SecurityException
,
Thread.resume()
,
checkAccess()
public final void destroy()
まず、このスレッドグループの checkAccess
メソッドが引数なしで呼び出されます。この結果、セキュリティ例外がスローされることがあります。
IllegalThreadStateException
- スレッドグループが空ではない場合、またはスレッドグループがすでに破棄されている場合
SecurityException
- 現在のスレッドがこのスレッドグループを変更できない場合checkAccess()
public void list()
public void uncaughtException(Thread t, Throwable e)
ThreadGroup
の uncaughtException
メソッドは以下を実行します。
uncaughtException
メソッドは同じ 2 つの引数が指定されて呼び出されます。
Throwable
引数が ThreadDeath
のインスタンスであるかどうかを判定します。インスタンスである場合は、特別なことは実行されません。インスタンスではない場合は、スタックバックトレースを標準エラーストリームに出力するために Throwable
の printStackTrace
メソッドが呼び出されます。
アプリケーションは、ThreadGroup
のサブクラスでこのメソッドをオーバーライドして、キャッチされていない例外を別の方法で処理することができます。
t
- 終了しようとしているスレッドe
- キャッチされていない例外System.err
,
ThreadDeath
,
Throwable.printStackTrace(java.io.PrintStream)
public boolean allowThreadSuspension(boolean b)
suspend()
に依存します。また、この呼び出しの動作は保証されません。
b
- 中断を可能または不可にする boolean
public String toString()
Object
内の toString
|
JavaTM 2 Platform Std. Ed. v1.4.0 |
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Java、Java 2D、および JDBC は米国ならびにその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.