Java线程监视\\\\分析\\\\测量

| 我熟悉   http://download.oracle.com/javase/6/docs/api/java/lang/management/ThreadMXBean.html 我想测试\\ profile \\测量线程获得多少CPU时间。 我在我的线程构造函数中添加了以下内容:
ManagementFactory.getThreadMXBean().setThreadCpuTimeEnabled(true);
if(!ManagementFactory.getThreadMXBean().isCurrentThreadCpuTimeSupported())
    System.err.println(\"measure is not supported.\");
ManagementFactory.getThreadMXBean().setThreadContentionMonitoringEnabled(true);
if(!ManagementFactory.getThreadMXBean().isCurrentThreadCpuTimeSupported())
    System.err.println(\"contention is not supported.\");
然后,当线程完成执行后,我执行了:
long tID = Thread.currentThread().getId();
long execTime = ManagementFactory.getThreadMXBean().getThreadCpuTime(tID);
但是对于我大多数的线程(我绝对确保它们确实占用了CPU),我的执行时间为零(execTime == 0)。 我如何测量螺纹?以上过程可能是什么问题? 先谢谢了。     
已邀请:
        看看Thread Top,它已经完成,无需重新发明轮子。     

要回复问题请先登录注册