![]() |
CPU-Auslastung mit dem PerformanceCounter ermitteln
Laut diesem Code:
![]() Soll man so die CPU-Auslastung ermitteln können. Nur bekomme ich immer 0 raus, obwohl die Auslastung zwischen 6 und 8 Prozent liegt:
Code:
Was stimmt da schon wieder mal nicht? :gruebel:
private int GetCPULoad()
{ PerformanceCounter perfcnt = new PerformanceCounter(); perfcnt.CategoryName = "Processor"; perfcnt.CounterName = "% Processor Time"; perfcnt.InstanceName = "_Total"; perfcnt.MachineName = "Nestor"; return Convert.ToInt32(perfcnt.NextValue()); } |
Re: CPU-Auslastung mit dem PerformanceCounter ermitteln
Hallo!
Probiere mal für MachineName einen Punkt (".") einzusetzen, denn ich glaube das ist der NetBIOS-Computername des PCs dessen Wert du bekommen möchtest und ein . sollte der Lokale PC sein. NACHTRAG: Der erste Wert den NextValue() liefert ist übrigens auch bei mir immer 0, da du in deiner Methode jedoch jedes mal eine neue Instanz erzeugst, ist dies der Grund des Problems. Lösung: Entweder einfach 2 mal aufrufen (Quick'n Dirty) oder mal in der MSDN nachsehen, wieso das so ist. Grüße Faux |
Re: CPU-Auslastung mit dem PerformanceCounter ermitteln
Danke, das wars. Es muss global in der Klasse sein.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:04 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz