Gewusst wie: Hinzufügen und Entfernen von Leistungsindikatorinstanzen

Aktualisiert: November 2007

Beim Arbeiten mit Leistungsindikatoren und Kategorien können Instanzen dynamisch hinzugefügt und entfernt werden. Sie können beispielsweise für jeden Benutzer einer webbasierten Verkaufsanwendung eine Instanz hinzufügen, um Informationen zu dessen Aktionen zu erfassen, und die Instanz beim Ablauf der Benutzersitzung wieder entfernen.

Zum Hinzufügen von Instanzen legen Sie einen Rohwert für einen Leistungsindikator fest. Wenn für den Indikator noch keine Instanz vorhanden ist, wird eine Instanz erstellt, wenn Sie die RawValue-Eigenschaft zum ersten Mal festlegen. Alle folgenden, den Rohwert betreffenden Aktionen werden auf diese Instanz bezogen, wenn keine andere angegeben wird. Weitere Instanzen erstellen Sie, indem Sie einen neuen Instanznamen angeben und einen zugehörigen Wert festlegen.

Hinweis:

Die Instanz wird durch das Festlegen ihres Werts erstellt, nicht durch das Festlegen ihres Namens.

Im Gegensatz zu Leistungsindikatoren, die nur bei der Kategorieerstellung in eine Kategorie aufgenommen werden können, können Instanzen jederzeit zu benutzerdefinierten Kategorien hinzugefügt und daraus entfernt werden. Mit der InstanceName-Eigenschaft wechseln Sie zwischen einzelnen Instanzen.

Mit der RemoveInstance-Methode entfernen Sie eine Instanz eines benutzerdefinierten Leistungsindikators aus dem Speicher. Beispiel: Sie arbeiten mit einer webbasierten Handelsanwendung, die auf die OrderInProgress-Kategorie zugreift, in der Instanzen mit dem aktuellen Warenkorb der einzelnen Benutzer verwaltet werden. Sobald ein Benutzer eine Ware in seinem Korb ablegt, erstellt die Anwendung eine neue Instanz für diesen Benutzer. Nachdem der Benutzer seine Bestellung abgeschlossen hat, löscht die Anwendung die Instanz. Im Verlauf der Bestellung aktualisieren Sie die Instanz mithilfe der Leistungsindikatoren NumberofItemsinCart, TimeSinceCreation und NumberofItemsAddedPerSecond.

Aus standardmäßig in Windows enthaltenen Leistungsindikatoren können Sie keine Instanzen entfernen. Wenn sich die PerformanceCounter-Komponente nicht auf eine gültige Instanz bezieht, löst diese Methode eine Ausnahme aus.

Hinweis:

Die PerformanceCounter-Klasse wird in Microsoft Windows NT, Version 4.0, nicht vollständig unterstützt. Sie können in den Systemleistungsindikatoren lesen, Sie können jedoch keine benutzerdefinierten Indikatoren erstellen, in diese schreiben oder sie löschen.

So fügen Sie eine Leistungsindikatorinstanz hinzu

  1. Erstellen Sie Kategorien und Leistungsindikatoren wie gewohnt. Weitere Informationen hierzu finden Sie unter Gewusst wie: Erstellen von Leistungsindikatorkategorien.

  2. Legen Sie die InstanceName-Eigenschaft auf einen eindeutigen Namen für die Instanz fest, und legen Sie anschließend die RawValue-Eigenschaft fest.

    Der folgende Code zeigt das Erstellen mehrerer Instanzen einer vorhandenen Leistungsindikatorkategorie:

    ' Assumes the category and counter have already been created.
    Dim myCounter As New System.Diagnostics.PerformanceCounter( _
       "cat", "counter", "instance1", False)
    ' Set the raw value to automatically create instance1.
    myCounter.RawValue = 100
    ' State that you will now be working with a different instance.
    myCounter.InstanceName = "instance2"
    ' Setting the value actually creates instance2.
    myCounter.RawValue = 200
    
         // Assumes category and counter have been created.
            System.Diagnostics.PerformanceCounter myCounter =
               new System.Diagnostics.PerformanceCounter(
               "cat", "counter", "instance1", false);
            // Set the raw value to automatically create instance1.
            myCounter.RawValue = 100;
            // State that you will now be working with a different instance.
            myCounter.InstanceName = "instance2";
            // Setting the value actually creates instance2.
            myCounter.RawValue = 200;
    
    

So entfernen Sie eine Leistungsindikatorinstanz

  1. Erstellen Sie eine Instanz der PerformanceCounter-Komponente, die mit dem Leistungsindikator verbunden ist, aus dem eine Instanz entfernt werden soll. Weitere Informationen hierzu finden Sie unter Gewusst wie: Erstellen von Instanzen von PerformanceCounter-Komponenten.

  2. Legen Sie für die InstanceName-Eigenschaft die zu löschende Instanz fest.

  3. Rufen Sie die RemoveInstance-Methode in der Komponente auf.

    Das folgende Beispiel zeigt, wie Sie die Reference-Instanz aus einem Leistungsindikator entfernen.

    ' Assumes that you have configured PerformanceCounter1 to
    ' interact with the appropriate counter.
    PerformanceCounter1.InstanceName = "Reference"
    PerformanceCounter1.RemoveInstance()
    
         // Assumes that you have configured PerformanceCounter1 to
            // interact with the appropriate counter.
            PerformanceCounter1.InstanceName = "Reference";
            PerformanceCounter1.RemoveInstance();
    

Siehe auch

Aufgaben

Gewusst wie: Erstellen von Instanzen von PerformanceCounter-Komponenten

Konzepte

Kategorie- und Indikatorverwaltung