我需要跟踪当前正在运行的线程执行情况,以衡量其性能,例如内存使用率, CPU使用率和全局缓存未命中等...
我能够使用java.lang.management.ThreadMXBean
获取线程的CPU时间
ThreadMXBean tmxb = ManagementFactory.getThreadMXBean();
long cpuTime = tmxb.getThreadCpuTime(aThreadID);
但是我无法获得其他值。所以我的问题是,是否有任何API可用于衡量线程性能或如何使用本机方式获取它。
答案 0 :(得分:0)
jdk的bin文件夹中通常有一个jconsole可执行文件。执行它,连接您的进程,它将列出所有托管bean。
java.lang文件夹是您正在寻找的文件夹。