我編寫了一個程序,它在啓動時運行大約96%的CPU,然後在崩潰之前非常迅速地將CPU提示到100%。我需要跟蹤CPU不斷完成的任務,無論是正在運行的程序還是正在進行的特定方法或調用。Java CPU佔用率高達100%
任何建議或鏈接?
謝謝。
我編寫了一個程序,它在啓動時運行大約96%的CPU,然後在崩潰之前非常迅速地將CPU提示到100%。我需要跟蹤CPU不斷完成的任務,無論是正在運行的程序還是正在進行的特定方法或調用。Java CPU佔用率高達100%
任何建議或鏈接?
謝謝。
Java VisualVM應該有所幫助。它是一個包含在標準JDK中的工具。它允許您分析和檢查正在運行的Java程序。它應該和你的javac可執行文件在同一個目錄下。
以下是用於調用該工具的命令行的quick synopsis。
他沒有提到JDK版本,jvisualvm僅適用於JDK 1.6及更高版本。雖然它是一個偉大的實用程序使用。 +1。 – Favonius
@Favonius:好的電話!仍然有很多舊版本的Java。我不能認爲每個人都會使用最新的。 –
我正在使用JDK 1.6,所以會試用。謝謝! – mhollander38
您可以開始分析您的應用程序。
由於您沒有提到Java版本,所以我安全地假設SUN JDK 1.5。
對於啓動可以使用:
其次,您可以使用JConsole監視應用程序中的內存使用情況。它在你的<JDK HOME>\bin
。
如果您使用的是SUN JDK 1.6,那麼作爲A. Levy提到的,使用jvisualvm進行CPU和堆分析。
然後可能發佈您的代碼片段。
+1替代分析器。如果我需要在1.6以前的JVM上進行配置文件,我會嘗試記住JRAT。 –
你可以租用你的代碼(特別是發生崩潰的地方),還有一個堆棧跟蹤以幫助我們進行調試嗎?如果你不這樣做,我們無法真正幫助你。謝謝! – JasCav
您正在使用哪個版本的java? – LB40
「撞車」的意思是? –