|
JavaTM Platform Standard Ed. 6 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object java.lang.management.ThreadInfo
public class ThreadInfo
スレッド情報です。ThreadInfo には、スレッドに関する次の情報があります。
Object.wait
メソッドで待機していた、またはLockSupport.park
呼び出しにより、park が行われた。スレッドコンテンション監視
が有効になってから、スレッドが同期をブロックした、または通知を待機した累積経過時間。一部の Java 仮想マシンの実装は、この機能をサポートしていない可能性がある。ThreadMXBean.isThreadContentionMonitoringSupported()
メソッドを使って、Java 仮想マシンがこの機能をサポートしているかどうかを判定できるこのスレッド情報クラスは、同期制御用ではなく、システムの監視に使用されるよう設計されています。
from
メソッドに指定された属性を持つ CompositeData
にマッピングされます。
ThreadMXBean.getThreadInfo(long)
,
ThreadMXBean.dumpAllThreads(boolean, boolean)
メソッドの概要 | |
---|---|
static ThreadInfo |
from(CompositeData cd)
指定された CompositeData によって表される ThreadInfo オブジェクトを返します。 |
long |
getBlockedCount()
この ThreadInfo に関連するスレッドが、モニターに入るか、再入するのをブロックした合計回数を返します。 |
long |
getBlockedTime()
スレッドコンテンション監視が有効になってから、この ThreadInfo に関連するスレッドがモニターに入るか再入するのをブロックしたおよその累積経過時間 (ミリ秒単位) を返します。 |
MonitorInfo[] |
getLockedMonitors()
MonitorInfo オブジェクトの配列を返します。 |
LockInfo[] |
getLockedSynchronizers()
LockInfo オブジェクトの配列を返します。 |
LockInfo |
getLockInfo()
この ThreadInfo に関連するスレッドが待機するのをブロックされるオブジェクトの LockInfo を返します。 |
String |
getLockName()
この ThreadInfo に関連するスレッドが待機するのをブロックされるオブジェクトの 文字列表現 を返します。 |
long |
getLockOwnerId()
この ThreadInfo に関連するスレッドが待機をブロックされているオブジェクトについて、そのオブジェクトを所有するスレッドの ID を返します。 |
String |
getLockOwnerName()
この ThreadInfo に関連するスレッドが待機をブロックされているオブジェクトについて、そのオブジェクトを所有するスレッドの名前を返します。 |
StackTraceElement[] |
getStackTrace()
この ThreadInfo に関連するスレッドのスタックトレースを返します。 |
long |
getThreadId()
この ThreadInfo に関連するスレッドの ID を返します。 |
String |
getThreadName()
この ThreadInfo に関連するスレッドの名前を返します。 |
Thread.State |
getThreadState()
この ThreadInfo に関連するスレッドの状態を返します。 |
long |
getWaitedCount()
この ThreadInfo に関連するスレッドが通知を待機した合計回数を返します。 |
long |
getWaitedTime()
スレッドコンテンション監視が有効になってから、この ThreadInfo に関連するスレッドが通知を待機したおよその累積経過時間 (ミリ秒単位) を返します。 |
boolean |
isInNative()
この ThreadInfo に関連するスレッドが、JNI (Java Native Interface) を使ってネイティブコードを実行しているかどうかをテストします。 |
boolean |
isSuspended()
この ThreadInfo に関連するスレッドが中断されているかどうかをテストします。 |
String |
toString()
このスレッド情報の文字列表現を返します。 |
クラス java.lang.Object から継承されたメソッド |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
メソッドの詳細 |
---|
public long getThreadId()
public String getThreadName()
public Thread.State getThreadState()
public long getBlockedTime()
BLOCKED
状態になっていた合計の累積時間です。スレッドコンテンション監視が無効の場合、このスレッドは -1 を返します。
Java 仮想マシンは高精度タイマーを使って計測できます。この統計情報は、スレッドコンテンション監視が再び有効になるとリセットされます。
UnsupportedOperationException
- Java 仮想マシンがこの操作をサポートしていない場合ThreadMXBean.isThreadContentionMonitoringSupported()
,
ThreadMXBean.setThreadContentionMonitoringEnabled(boolean)
public long getBlockedCount()
BLOCKED
状態であった合計回数です。
public long getWaitedTime()
WAITING
または TIMED_WAITING
状態であった合計の累積時間です。スレッドコンテンション監視が無効の場合、このスレッドは -1 を返します。
Java 仮想マシンは高精度タイマーを使って計測できます。この統計情報は、スレッドコンテンション監視が再び有効になるとリセットされます。
UnsupportedOperationException
- Java 仮想マシンがこの操作をサポートしていない場合ThreadMXBean.isThreadContentionMonitoringSupported()
,
ThreadMXBean.setThreadContentionMonitoringEnabled(boolean)
public long getWaitedCount()
WAITING
または TIMED_WAITING
状態にあった合計回数です。
public LockInfo getLockInfo()
BLOCKED
状態である。
Object.wait
メソッドを呼び出すために WAITING
状態または TIMED_WAITING
状態にある。
LockSupport.park
メソッドを呼び出すために WAITING
状態または TIMED_WAITING
状態にある。同期オブジェクトとは、LockSupport.getBlocker
メソッドで返されるオブジェクトである。通常は、所有可能なシンクロナイザまたは Condition
である。スレッドが上記のいずれの状態でもない場合、このメソッドは null を返します。
public String getLockName()
文字列表現
を返します。このメソッドは、次を呼び出すのと同等です。
getLockInfo().toString()
このスレッドがどのオブジェクトの待機もブロックされていない場合、またはオブジェクトがスレッドによって所有されていない場合、このメソッドは null を返します。
getLockInfo()
public long getLockOwnerId()
getLockInfo()
public String getLockOwnerName()
getLockInfo()
public StackTraceElement[] getStackTrace()
Java 仮想マシンの中には、特定の状況下でスタックトレースから 1 つ以上のスタックフレームを省略するものがあります。極端な場合、この ThreadInfo に関連するスレッドのスタックトレース情報を保持しない仮想マシンが、このメソッドから長さゼロの配列を返すことが許可されます。
public boolean isSuspended()
Thread.suspend()
が呼び出されていた場合、このメソッドは true を返します。
public boolean isInNative()
public String toString()
Object
内の toString
public static ThreadInfo from(CompositeData cd)
属性名 型 threadId java.lang.Long threadName java.lang.String threadState java.lang.String suspended java.lang.Boolean inNative java.lang.Boolean blockedCount java.lang.Long blockedTime java.lang.Long waitedCount java.lang.Long waitedTime java.lang.Long lockInfo javax.management.openmbean.CompositeData - MXBeans の型マッピングルールで指定された、 LockInfo
のマップされた型。cd にこの属性が含まれない場合、LockInfo オブジェクトは lockName 属性の値から構築されます。
lockName java.lang.String lockOwnerId java.lang.Long lockOwnerName java.lang.String stackTrace javax.management.openmbean.CompositeData[] 各要素は、次の属性を含む StackTraceElement を表す CompositeData
属性名 型 className java.lang.String methodName java.lang.String fileName java.lang.String lineNumber java.lang.Integer nativeMethod java.lang.Boolean lockedMonitors 要素型が MonitorInfo
のマップされた型である javax.management.openmbean.CompositeData[]。この型はMonitor.from
メソッドで指定されます。cd にこの属性が含まれない場合、この属性は空の配列に設定されます。
lockedSynchronizers 要素型が LockInfo
のマップされた型である javax.management.openmbean.CompositeData[]。この型は MXBeans の型マッピングルールで指定されます。cd にこの属性が含まれない場合、この属性は空の配列に設定されます。
cd
- ThreadInfo を表す CompositeData
IllegalArgumentException
- cd が、上記の属性を持つ ThreadInfo を表さない場合public MonitorInfo[] getLockedMonitors()
MonitorInfo
オブジェクトの配列を返します。各オブジェクトは、この ThreadInfo に関連するスレッドによって現在ロックされているオブジェクトモニターを表します。このスレッド情報についてロックされたモニターが要求されなかった場合、またはスレッドによってロックされたモニターがない場合、このメソッドは長さゼロの配列を返します。
public LockInfo[] getLockedSynchronizers()
LockInfo
オブジェクトの配列を返します。各オブジェクトは、この ThreadInfo に関連するスレッドによって現在ロックされている所有可能なシンクロナイザを表します。このスレッド情報についてロックされたシンクロナイザが要求されなかった場合、またはスレッドによってロックされたシンクロナイザがない場合、このメソッドは長さゼロの配列を返します。
|
JavaTM Platform Standard Ed. 6 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。