Performance Counter lesen
Autor: Dr. Holger Schwichtenberg
' ============================ ' .NET-Code-Beispiel in Visual Basic .NET ' Performance Counter lesen ' (C) Holger@Schwichtenberg.de ' ============================ Sub PerfCount_Lesen() Const KATEGORIE As String = "Prozessor" Const OBJEKTNAME As String = "Prozessorzeit (%)" Const INSTANZNAME As String = "_Total" Const COMPUTER = "Sonne2000" Dim PC As PerformanceCounter Dim a As Integer Dim wert As Long ' --- Instanziieren PC = New PerformanceCounter(KATEGORIE, OBJEKTNAME, INSTANZNAME, COMPUTER) ' --- Nächste 100 Werte lesen For a = 1 To 100 ' --- Wert auslesen wert = PC.NextValue().ToString() ' --- Wert ausgeben out("(" & _ PC.InstanceName() & _ ")/" & _ PC.CounterName & " = " & _ wert) Next End Sub
using System; using System.Diagnostics; using System.Threading; using System.Windows.Forms; using FCL_Buch; namespace FCLBuch._SystemDiagnostics { public class Samples_Performance { public void PerformanceCounter_Lesen() { // Performance-Counter lesen string kategorie = "Prozessor"; string objectName = "Prozessorzeit (%)"; string instanceName = "_Total"; string computer = "Coruscant"; // Instanziieren PerformanceCounter pc = new PerformanceCounter(kategorie, objectName, instanceName, computer); // Nächste 100 Werte lesen for ( int i=0; i<100; i++ ) { // Wert auslesen string wert = pc.NextValue().ToString(); // Wert ausgeben FclOutput.PrintOut("(" + pc.InstanceName + ")/" + pc.CounterName + " = " + wert); } } } }
Ausgaben werden in den Beispielen durch Hilfsroutinen wie out() und PrintOut() erzeugt. Diese sind hier nicht angegeben, da deren Implementierung von der jeweiligen Umgebung abhängt. Für Konsolenanwendungen können hier z.B. Console.WriteLine() einsetzen.
Liste aller Codebeispiele Definition '.NET Framework Class Library' Verfügbarkeit der Klasse 'System.Diagnostics.PerformanceCounter' Übersicht über den FCL-Namensraum 'System.Diagnostics' .NET & Visual Studio Community Portal