gpt4 book ai didi

java - 同步统计信息在 JVMTI API 中不可用?

转载 作者:行者123 更新时间:2023-12-01 15:52:43 26 4
gpt4 key购买 nike

类(class)java.lang.ThreadInfo提供了一些非常有用的方法,可以提供有关 Java 中同步的统计信息。例如:

getBlockedTime() 返回自启用线程争用监视以来与此 ThreadInfo 关联的线程被阻止进入或重新进入监视器的大致累积运行时间(以毫秒为单位)。 [...]

getWaitedCount() 返回与此 ThreadInfo 关联的线程等待通知的总次数。 [...]

我找不到从 JVMTI API 访问这些信息的函数。我是否忽略了它或者我必须自己收集这些信息?

<小时/>

除了同步统计之外,似乎你甚至无法获取线程id,可以使用Thread.currentThread().getId();

最佳答案

这并不是那么简单,但我认为您可以通过 JVMTI 事件到达阻塞时间和等待计数(请参阅与“监视器”有关的事件:“监视器争用输入”和“监视器等待”等)。

关于线程 ID,不,看起来 JVMTI 没有分配这些。另一方面,我不确定 ThreadInfo 中给出的 ID 实际上是否指操作系统分配的任何“真实”ID。

关于java - 同步统计信息在 JVMTI API 中不可用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5690573/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com