CPU - Auslastung

25/02/2009 - 14:34 von Karsten Kirchner | Report spam
Hallo zusammen,

ich möchte die CPU-Auslastung aus dem System auslesen. Da gibt es mehrere
Möglichkeiten.
Ich habe mich für folgende Möglichkeit entschieden:

public partial class frmClient : Form
{
private PerformanceCounter cpuCounter;

private void btnCPUAuslastung_Click(object sender, EventArgs e)
{
InitCPUCounter();
float val = GetCPUCounter();
textBoxCPUAuslastung.Text = val.ToString();
}

public void InitCPUCounter()
{
cpuCounter = new PerformanceCounter();
cpuCounter.CategoryName = "Processor";
cpuCounter.CounterName = "% Processor Time";
cpuCounter.InstanceName = "_Total";
}

public float GetCPUCounter()
{
float val = cpuCounter.NextValue();
return val;
}
}

Leiter kommt bei der Funktion GetCPUCounter immer die 0.0 zurück.
Weiß jemand was ich hier falsch mache ? Wenn ich die Funktion über eine
Komponente aus der Toolbox einfüge funktioniert alles.
Genau das funktioniert auch wenn ich dies in einer normalen
Consolen-Applikation implementiere.
Hat jemand einen Rat an was das liegen kann ? Danke im Voraus !

Viele Grüße
Karsten
 

Lesen sie die antworten

#1 Werner Schmidt
25/02/2009 - 17:03 | Warnen spam
Hallo Karsten,

verschiebe

InitCPUCounter();



in den Konstruktor und alles ist in Butter.

Gruß

Werner



Karsten Kirchner schrieb:
Hallo zusammen,

ich möchte die CPU-Auslastung aus dem System auslesen. Da gibt es mehrere
Möglichkeiten.
Ich habe mich für folgende Möglichkeit entschieden:

public partial class frmClient : Form
{
private PerformanceCounter cpuCounter;

private void btnCPUAuslastung_Click(object sender, EventArgs e)
{
InitCPUCounter();
float val = GetCPUCounter();
textBoxCPUAuslastung.Text = val.ToString();
}

public void InitCPUCounter()
{
cpuCounter = new PerformanceCounter();
cpuCounter.CategoryName = "Processor";
cpuCounter.CounterName = "% Processor Time";
cpuCounter.InstanceName = "_Total";
}

public float GetCPUCounter()
{
float val = cpuCounter.NextValue();
return val;
}
}

Leiter kommt bei der Funktion GetCPUCounter immer die 0.0 zurück.
Weiß jemand was ich hier falsch mache ? Wenn ich die Funktion über eine
Komponente aus der Toolbox einfüge funktioniert alles.
Genau das funktioniert auch wenn ich dies in einer normalen
Consolen-Applikation implementiere.
Hat jemand einen Rat an was das liegen kann ? Danke im Voraus !

Viele Grüße
Karsten


Ähnliche fragen