2010-05-06 40 views

回答

7

這很不平凡。你最好的選擇是使用一個可以累積實際CPU週期的探查器。

+3

+1 JDK包含一個分析器JVisualVM,這是您可以嘗試的第一件事。 – Jesper 2010-05-06 12:00:31

17

的Java MXBeans的可提供每個線程的CPU時間:

import java.lang.management.ManagementFactory; 
import java.lang.management.ThreadMXBean; 

long nanos = ManagementFactory.getThreadMXBean().getThreadCpuTime(Thread.currentThread().getId()); 
+0

請注意,此功能的可用性取決於平臺。建議在使用'getThreadCpuTime'之前檢查'isCurrentThreadCpuTimeSupported'標誌。 – 2017-07-03 14:54:51

0

使用支持多度量分析解決方案。我們在產品支持標準產品中稱之爲(度量)米,例如CPU時間,阻塞時間,等待時間,甚至是基於關鍵性能指標的自定義計量器。我想你也想看看究竟是一個線程在做什麼,在這種情況下,你肯定需要考慮一個產品,而不是一個本土的特別解決方案。