2 pièce(s) jointe(s)
C# Problème lors d'affichage de l'utilisation du CPU
Bonjour à tous, je suis confronté a un soucis que je ne comprend pas.
Je cherche à afficher mon utilisation du cpu avec un progressbar mais la valeur retourné n'est absolument pas la même que celle affiché par le moniteur de ressources et tend même vers 0.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
|
private void OntimedEvent(object source, System.Timers.ElapsedEventArgs e)
{
int cpuValue = GetCpuValue();
int memValue = GetMemValue();
if (cPgBCPU.InvokeRequired)
{
cPgBCPU.Invoke(new Action(() => cPgBCPU.Value = cpuValue));
}
else
{
cPgBCPU.Value = cpuValue;
}
if (cPgBMem.InvokeRequired)
{
cPgBMem.Invoke(new Action(() => cPgBMem.Value = memValue));
}
else
{
cPgBMem.Value = memValue;
}
// cPgBMem.Value = memValue;
}
private static int GetCpuValue()
{
var CpuCounter = new PerformanceCounter("Processor", "% Processor Time", "_Total");
CpuCounter.NextValue();
Thread.Sleep(1000);
int returnValue = (int)CpuCounter.NextValue();
return returnValue;
} |
Pièce jointe 587200
Pièce jointe 587201