我想測量Java中的線程執行時間。現在我正在監視線程的開始和結束時間,但我認爲它不太準確,因爲線程在執行期間可能會被暫停。如何測量Java線程執行時間?
8
A
回答
7
這很不平凡。你最好的選擇是使用一個可以累積實際CPU週期的探查器。
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時間,阻塞時間,等待時間,甚至是基於關鍵性能指標的自定義計量器。我想你也想看看究竟是一個線程在做什麼,在這種情況下,你肯定需要考慮一個產品,而不是一個本土的特別解決方案。
相關問題
- 1. 測量java短時間運行的線程執行時間
- 2. 測量多線程的執行時間
- 3. 測量Java執行時間
- 4. 如何測量openmp中每個線程的執行時間?
- 5. 如何測量一個線程的執行時間?
- 6. 在多線程環境中測量線程的執行時間
- 7. 如何用線程度量總執行時間Java
- 8. 如何測量由Java中的進程執行的代碼的執行時間?
- 9. 如何測量構建執行時間?
- 10. 測量程序執行時間
- 11. 程序執行的C++測量時間
- 12. 測量時間執行
- 13. C++測量執行時間
- 14. 測量執行時間
- 15. 測量執行時間短
- 16. 使用Python中的多線程測量執行時間
- 17. 用C#測量線程的執行時間
- 18. 如何測量預編譯的java類的執行時間?
- 19. 線程 - 執行時間
- 20. Python:線程執行時間
- 21. 如何測量100次程序執行的時間?
- 22. 如何測量Spark GraphX應用程序的執行時間?
- 23. 空閒線程在Java執行程序中執行CPU執行時間嗎?
- 24. 如何使用線程測量時間運行多個功能?
- 25. 執行時間java程序
- 26. 當我從Java代碼執行它時,應該如何測量C++程序的執行時間?
- 27. 如何測量java進程的實際運行時間?
- 28. 多線程程序的測量時間
- 29. 測量線程之間的計算時間 - java
- 30. 如何在執行的各個階段執行perl CGI性能測量,基準測量和時間測量?
+1 JDK包含一個分析器JVisualVM,這是您可以嘗試的第一件事。 – Jesper 2010-05-06 12:00:31