PerformanceCounter是一個用于監視計算機性能指標的類,它可以用來測量各種指標,如CPU使用率、內存使用率、磁盤讀寫速度等。
使用PerformanceCounter類需要以下幾個步驟:
PerformanceCounter counter = new PerformanceCounter(categoryName, counterName, instanceName);
categoryName:性能計數器的分類名稱,可以是系統預定義的分類(如Processor、Memory等),也可以是自定義的分類。可以使用PerformanceCounterCategory類的GetCategories方法獲取可用的分類。
counterName:性能計數器的名稱,表示所要監視的具體指標。可以使用PerformanceCounterCategory類的GetCounters方法獲取指定分類下的可用指標。
instanceName:性能計數器的實例名稱,如果指標是屬于某個具體實例的(如某個進程、某個網絡接口等),則需要指定實例名稱。可以使用PerformanceCounterCategory類的GetInstanceNames方法獲取指定分類下的可用實例。
float value = counter.NextValue();
float value = counter.NextValue();
Thread.Sleep(1000);
value = counter.NextValue();
long value = counter.RawValue;
需要注意的是,使用PerformanceCounter類需要有足夠的權限,通常需要以管理員身份運行程序。
以下是一個示例,監視CPU使用率:
PerformanceCounter counter = new PerformanceCounter("Processor", "% Processor Time", "_Total");
while (true)
{
float value = counter.NextValue();
Console.WriteLine("CPU使用率:{0}%", value);
Thread.Sleep(1000);
}
以上示例中,創建了一個PerformanceCounter實例,監視“Processor”分類下的“% Processor Time”指標,實例名稱為"_Total",然后在一個循環中獲取并打印CPU使用率,并每秒暫停一次。
希望以上內容對你有幫助!