javatm platform
standard ed. 6

java.lang.management
类 threadinfo

java.lang.object 继承者 java.lang.management.threadinfo

public class threadinfo
extends object

线程信息。threadinfo 包含有关线程的信息,包括(bāo kuò):

常规线程信息

执行信息

同步统计数据

此线程信息类设计用于监视系统,不用于同步控制。

mxbean 映射

threadinfo 映射到一个具有 from 方法中指定属性的 compositedata

从以下版本开始(appeared):
1.5
另请参见:
threadmxbean.getthreadinfo(long),threadmxbean.dumpallthreads(boolean, boolean)

方法摘要
static threadinfofrom(compositedata cd)
          返回由给定 compositedata 表示的 threadinfo 对象。
 longgetblockedcount()
          返回与此 threadinfo 关联的线程被阻塞进入或重进入监视器的总次数。
 longgetblockedtime()
          返回自从启用线程争用监视以来,与此 threadinfo 关联的线程被阻塞进入或重进入监视器的近似累计时间(以毫秒为单位)。
 monitorinfo[]getlockedmonitors()
          返回 monitorinfo 对象数组,每个数组元素表示关联此 threadinfo 的线程当前锁定的对象监视器。
 lockinfo[]getlockedsynchronizers()
          返回 lockinfo 对象数组,每个数组元素表示关联此 threadinfo 的线程当前锁定的可拥有同步器
 lockinfogetlockinfo()
          返回对象的 lockinfo,与此 threadinfo 关联的线程被阻塞并等待该对象。
 stringgetlockname()
          返回对象的字符串表示形式,与此 threadinfo 关联的线程被锁定并等待该对象。
 longjs随机数getlockownerid()
          返回拥有对象的线程的 id,与此 threadinfo 关联的线程被阻塞并等待该对象。
 stringgetlockownername()
          返回拥有对象的线程的名称,与此 threadinfo 关联的线程被阻塞并等待该对象。
 stacktraceelement[]getstacktrace()
          返回与此 threadinfo 关联的线程的堆栈跟踪。
 longgetthreadid()
          返回与此 threadinfo 关联的线程的 id。
 stringgetthreadname()
          返回与此 threadinfo 关联的线程的名称。
 thread.stategetthreadstate()
          返回与此 threadinfo 关联的线程的状态。
 longgetwaitedcount()
          返回与此 threadinfo 关联的线程等待通知的总次数。
 longgetwaitedtime()
          返回自从启用线程争用监视以来,与此 threadinfo 关联的线程等待通知的近似累计时间(以毫秒为单位)。
 booleanisinnative()
          测试与此 threadinfo 关联的线程是否通过 java 本机接口 (jni) 执行本机代码。
 booleanissuspended()
          测试与此 threadinfo 关联的线程是否被挂起。
 stringtostring()
          返回此线程信息的字符串表示形式。
 
从类 java.lang.object 继承的方法
clone, equals, finalize, getclass, hashcode, notify, notifyall, wait, wait, wait
 

方法详细(gǎn)畔

getthreadid

public long getthreadid()
返回与此 threadinfo 关联的线程的 id。

返回:
关联线程的 id。

getthreadname

public string getthreadname()
返回与此 threadinfo 关联的线程的名称。

返回:
关联线程的名称。

getthreadstate

public thread.state getthreadstate()
返回与此 threadinfo 关联的线程的状态。

返回:
关联线程的 thread.state

getblockedtime

public long getblockedtime()
返回自从启用线程争用监视以来,与此 threadinfo 关联的线程被阻塞进入或重进入监视器的近似累计时间(以毫秒为单位)。即自从上次启用线程争用监视以来,线程处于 blocked 状态的总累计时间。如果线程争用监视被禁用,此方法将返回 -1

java 虚拟机可能(kě néng)会使用高精度( dù)计时器测量时间。当重新启用线程争用监视时,将重置这个统计数据。

返回:
线程进入 blocked 状态的近似累计时间(以毫秒为单位);如果禁用了线程争用监视,则返回 -1
抛出:
unsupportedoperationexception - 如果 java 虚拟机不支持此操作。
另请参见:
threadmxbean.isthreadcontentionmonitoringsupported(),threadmxbean.setthreadcontentionmonitoringenabled(boolean)

getblockedcount

public long getblockedcount()
返回与此 threadinfo 关联的线程被阻塞进入或重进入监视器的总次数。即线程为 blocked 状态的次数。

返回:
线程进入 blocked 状态的总次数。

getwaitedtime

public long getwaitedtime()
返回自从启用线程争用监视以来,与此 threadinfo 关联的线程等待通知的近似累计时间(以毫秒为单位)。即自从启用线程争用监视以来,线程处于 waitingtimed_waiting 状态的总累计时间。如果线程争用监视被禁用,此方法将返回 -1

java 虚拟机可能会使用高精度( dù)计时器测量时间。当重新启用线程争用监视时,将重置这个统计数据。

返回:
线程为 waitingtimed_waiting 状态的近似累计时间(以毫秒为单位);如果禁用了线程争用监视,则返回 -1
余先生很贴心,在大门招牌底下隐藏了座椅,让排队等候的客人可以( kě yǐ)稍事休息
新加坡(xīn jiā pō)跟台湾(tái wān)基本上没时差,第一晚到樟宜机场时已经(have been)晚上七点多,等饭店巴士接送到饭店就已经(have been)快八点了XD
这是一道自己(his)当厨师的料理,自己(his)翻面自己决定熟度,完全(wán quán)客?u化来着,觉得(felt)熟度OK就可以( kě yǐ)沾海盐和胡椒酱一起(with)吃,我觉得(felt)原味就很美味了
何江忠、徐信正、刘延俊、范佐宪、陈以人共同公务员假借职务上之权力私行拘禁,何江忠、徐信正各处有期徒刑参年;刘延俊、陈以人各处有期徒刑贰年;范佐宪处有期徒刑贰年捌月
抛出:
unsupportedoperationexception - 如果 java 虚拟机不支持此操作。
另请参见:
threadmxbean.isthreadcontentionmonitoringsupported(),threadmxbean.setthreadcontentionmonitoringenabled(boolean)

getwaitedcount

public long getwaitedcount()
返回与此 threadinfo 关联的线程等待通知的总次数。即线程处于 waitingtimed_waiting 状态的次数。

返回:
线程处于 waitingtimed_waiting 状态的总次数。

getlockinfo

public lockinfo getlockinfo()
返回对象的 lockinfo,与此 threadinfo 关联的线程被阻塞并等待该对象。线程可以被阻塞并等待以下内容之一:

如果线程不处于以上任何状态之一,那么此方法返回 null

返回:
对象的 lockinfo,线程将锁定并等待该对象(如果有);否则返回 null
从以下版本开始:
1.6

getlockname

public string getlockname()
返回对象的字符串表示形式,与此 threadinfo 关联的线程被锁定并等待该对象。此方法等效于调用:
 getlockinfo().tostring() 

如果此线程没有被阻塞并等待任何对象,或者没有任何线程拥有该对象,那么此方法将返回 null

返回:
对象的字符串表示形式,线程在该对象上被阻塞(如果有);否则返回 null
另请参见:
getlockinfo()

getlockownerid

public long getlockownerid()
返回拥有对象的线程的 id,与此 threadinfo 关联的线程被阻塞并等待该对象。如果此线程没有被阻塞并等待任何对象,或者没有任何线程拥有该对象,那么此方法将返回 -1

返回:
对象(此线程在其上阻塞)所有(all)者线程的线程 id;如果此线程没有被阻塞,或者没有任何线程拥有该对象,则返回 -1
另请参见:
getlockinfo()

getlockownername

public string getlockownername()
返回拥有对象的线程的名称,与此 threadinfo 关联的线程被阻塞并等待该对象。如果此线程没有被阻塞并等待任何对象,或者没有任何线程拥有该对象,那么此方法将返回 null

返回:
拥有对象(此线程在其上阻塞)的线程的名称;如果此线程没有被阻塞,或者没有任何线程拥有该对象,则返回 null
另请参见:
getlockinfo()

getstacktrace

public stacktraceelement[] getstacktrace()
返回与此 threadinfo 关联的线程的堆栈跟踪。如果没有为此线程信息请求堆栈跟踪,此方法将返回长度为 0 的数组。若返回的数组不是长度为 0 的数组,则其第一个元素代表堆栈顶,它是该序列中最新的方法调用。最后一个元素代表堆栈底,是该序列中最旧的方法调用。

某些 java 虚拟机在某些情况下可能会从堆栈跟踪中忽略一个或多个堆栈帧。在极端情况下,没有关于此 threadinfo 关联线程堆栈跟踪信息的虚拟机可以从此方法返回一个长度为 0 的数组。

返回:
线程的 stacktraceelement 对象数组。

issuspended

public boolean issuspended()
测试与此 threadinfo 关联的线程是否被挂起。如果已经调用了 thread.suspend() 方法,此方法将返回 true

返回:
如果线程被挂起,则返回 true;否则返回 false

isinnative

public boolean isinnative()
测试与此 threadinfo 关联的线程是否通过 java 本机接口 (jni) 执行本机代码。jni 本机代码不包括(bāo kuò)虚拟机支持代码或由虚拟机生成的已编译本机代码。

返回:
如果线程执行本机代码,则返回 true;否则返回 false

tostring

public string tostring()
返回此线程信息的字符串表示形式。此字符串的格式取决于实现。返回的字符串通常包括线程名线程 id、它的状态堆栈跟踪(如果有)。

覆盖:
object 中的 tostring
返回:
此线程信息的字符串表示形式。

from

public static threadinfo from(compositedata cd)
返回由给定 compositedata 表示的 threadinfo 对象。除非上文另行指定,否则给定的 compositedata 必须包含以下属性:
属性名称类型
threadidjava.lang.long
threadnamejava.lang.string
threadstatejava.lang.string
suspendedjava.lang.boolean
innativejava.lang.boolean
blockedcountjava.lang.longjs随机数
blockedtimejava.lang.long
waitedcountjava.lang.long
waitedtimejava.lang.long
lockinfojavax.management.openmbean.compositedata- mxbean 类型映射规则(regulations)中指定的 lockinfo 的映射类型。

如果 cd 不包含此属性,则将根据 lockname 属性的值构造 lockinfo 对象。

locknamejava.lang.string
lockowneridjava.lang.long
lockownernamejava.lang.string
stacktracejavax.management.openmbean.compositedata[]

每个元素都是表示 stacktraceelement 的 compositedata,包含以下属性:

属性名称类型
classname网站地图 手机端java.lang.string
methodnamejava.lang.string
filenamejava.lang.string
linenumberjava.lang.integer
nativemethodjava.lang.boolean
lockedmonitorsjavax.management.openmbean.compositedata[],其元素类型是 monitorinfo 的映射类型,monitorinfo 在 monitor.from 方法中指定。

如果 cd 不包含此属性,那么此属性将被设置为空数组。

lockedsynchronizersjavax.management.openmbean.compositedata[],其元素是 lockinfo 的映射类型,lockinfo 在 mxbean类型映射规则(regulations)中指定。

如果 cd 不包含此属性,那么此属性将被设置为空数组。

参数:
cd - 表示 threadinfocompositedata
返回:
如果 cd 不为 null,则返回由 cd 表示的 threadinfo 对象;否则返回 null
抛出:
illegalargumentexception - 如果 cd 不表示具有上述属性的 threadinfo

getlockedmonitors

public monitorinfo[] getlockedmonitors()
返回 monitorinfo 对象数组,每个数组元素表示关联此 threadinfo 的线程当前锁定的对象监视器。如果没有为此线程信息请求任何锁定的监视器,或者线程没有锁定任何监视器,那么此方法返回长度为 0 的数组。

返回:
monitorinfo 对象数组,表示线程锁定的对象监视器。
从以下版本开始:
1.6

getlockedsynchronizers

public lockinfo[] getlockedsynchronizers()
返回 lockinfo 对象数组,每个数组元素表示关联此 threadinfo 的线程当前锁定的可拥有同步器。如果没有为此线程信息请求任何锁定的同步器,或者线程没有锁定任何同步器,那么此方法返回长度为 0 的数组。

返回:
lockinfo 对象数组,表示线程锁定的可拥有同步器。
从以下版本开始:
1.6

javatm platform
standard ed. 6

提交错误或意见(yì jian)
有关更多的 api 参考资料和开发(kāi fā)人员文档,请参阅 java se 开发(kāi fā)人员文档。该文档包含更详细的、面向开发人员的描述,以及总体概述、术语定义、使用技巧和工作(gōng zuò)代码示例。

版权所有 2007 sun microsystems, inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策