トップ  >  サンプルソース  >  CPU使用率(C#/VB.NET)

CPU使用率(C#/VB.NET)

2010年05月28日

CPU使用率を取得し表示するサンプル(ソース/コード)です。
System.Diagnostics.PerformanceCounterを使用しています。
CategoryName="Process"
CounterName="% Processor Time"
InstanceName = "idle"

このサンプルはCPUのコア数が1つの時のサンプルです。
このサンプルではCPUのアイドル率を取得して100から引いていますが、コア数が複数の場合はCupP.NextValue()で取得した値が各コアのアイドル率の合計であるため、その値をコア数で割る必要があります。

CPUのコア数はGetSystemInfo(Win32Api)を使用しSYSTEM_INFOのdwNumberOfProcessorsで取得します。

関連するサンプルはこちらです。
プロセス一覧(C#/VB.NET)
メモリ空容量(C#/VB.NET)

' --------------------------------------------------------
' CPU使用率を取得するサンプル(VB.NET/VS2005)
Private CupP As _
    System.Diagnostics.PerformanceCounter = Nothing
Private Sub Button1_Click( _
    ByVal sender As System.Object, _
    ByVal e As System.EventArgs) _
    Handles Button1.Click

    ' CPU使用率初期設定
    CupP = New System.Diagnostics.PerformanceCounter()
    CupP.CategoryName = "Process"
    CupP.CounterName = "% Processor Time"
    CupP.InstanceName = "idle"
    CupP.NextValue()
End Sub

Private Sub Timer1_Tick( _
    ByVal sender As System.Object, _
    ByVal e As System.EventArgs) _
    Handles Timer1.Tick

    ' CPU使用率表示
    If CupP Is Nothing = False Then
        Label1.Text = "" & (100 - CupP.NextValue())
    End If
End Sub
' --------------------------------------------------------

// -------------------------------------------------------
// CPU使用率を取得するサンプル(C#.NET/VS2005)
private System.Diagnostics.PerformanceCounter CupP = null;
private void button1_Click(object sender, EventArgs e)
{
    // CPU使用率初期設定
    CupP = new System.Diagnostics.PerformanceCounter();
    CupP.CategoryName = "Process";
    CupP.CounterName = "% Processor Time";
    CupP.InstanceName = "idle";
    CupP.NextValue();
}

private void timer1_Tick(object sender, EventArgs e)
{
    // CPU使用率表示
    if( CupP !=null ){
        label1.Text = "" + (100 - CupP.NextValue());
    }
}
// -------------------------------------------------------
スポンサーサイト

メモリ空き容量(C#/VB.NET) | トップページへ戻る | プロセス一覧(C#/VB.NET)

このページのトップに戻る

コメント

名前
題名
メールアドレス
WEBサイト
 
コメント
パスワード
  管理者にだけ表示を許可する

このページのトップに戻る

トラックバック

このページのトップに戻る