2013-05-30 25 views
4

我已經在互聯網上搜索了大約兩天了。我發現了很多關於如何使用VB和.NET框架中的任何東西來查找CPU使用情況的信息。我不使用.NET框架,所以這些都是無關緊要的,我感覺。在Java中查找Windows機器的平均CPU使用率

我真正需要的是結果類似於在Windows任務管理器「性能」選項卡下的「CPU使用情況」一節中顯示的。如果我能找到一種模擬這種計算的方法,那麼這正是我所需要的。我需要CPU使用率的百分比。

很明顯,Java不是查找計算機的CPU使用率的理想語言,但這是我使用的語言,我已經能夠得到一切我需要有關除了這個計算機。

我正在使用Windows 7和Java版本7更新21. Eclipse是我的IDE。

這是我第一次張貼在這裏的一個問題,所以如果我已經離開了東西或事情不清楚,請你和我會盡我所能解釋更多的我是什麼意思。

+0

http://stackoverflow.com/questions/47177/how-to-monitor-the-computers-cpu-memory-and-disk-usage-in-java可能的重複 – DGomez

+0

@DGomez我嘗試使用SIGAR API在你發佈的答案中提到,我能夠獲得計算機的內存和其他一些東西,但我仍然不確定如何獲得平均CPU使用率。也許我只需要在SIGAR API中獲得一些幫助。你怎麼看? – Casey

回答

3

有幾種方法可以做到這一點;一種是運行命令行工具並解析輸出。在Windows 7上,您可以運行

c:\Windows\system32\typeperf "\processor(_total)\% processor time" 

嘗試一下 - 它會打印幾行採樣的CPU負載數據。

另一種方法是使用OperatingSystemMXBean

+0

這是一個非常好的命令!由於它會導致輸出不斷出現,我怎麼才能改變它,直到我打電話時才放出一行? – Casey

+0

您可以添加「-sc 1」以僅打印一個樣本。 –

+0

這正是我所需要的。謝謝你這麼快回復。我已將這標記爲答案。正如你所說,我將通過輸出解析。 – Casey