Partager via


Comment : écrire des valeurs dans des compteurs de performance

Mise à jour : novembre 2007

Pour écrire une valeur dans un compteur, vous incrémentez la valeur brute actuelle de ce compteur par un nombre négatif ou positif. Pour ce faire, utilisez la méthode IncrementBy sur la classe PerformanceCounter.

Remarque :

Une incrémentation par un nombre négatif a pour effet de décrémenter le compteur de la valeur absolue de ce nombre. Par exemple, en incrémentant d'une valeur de 3 vous augmentez de 3 la valeur brute du compteur. En revanche, en incrémentant d'une valeur de -3 vous diminuez de 3 la valeur brute du compteur.

En outre, vous pouvez utiliser les méthodes Increment et Decrement pour augmenter ou diminuer de un les valeurs d'un compteur. Le traitement de ces méthodes est beaucoup plus rapide que celui de la méthode IncrementBy.

Vous ne pouvez incrémenter des valeurs que sur des compteurs personnalisés ; par défaut, l'interaction avec les compteurs système via une instance du composant PerformanceCounter est limitée au mode lecture seule. Avant de pouvoir incrémenter un compteur personnalisé, vous devez affecter la valeur false à la propriété ReadOnly de l'instance du composant auquel vous accédez.

Remarque :

Certaines restrictions de sécurité s'appliquent à l'utilisation des compteurs de performance. Pour plus d'informations, consultez Introduction à l'analyse des seuils de performance.

Remarque :

La classe PerformanceCounter n'est pas entièrement prise en charge dans Microsoft Windows NT version 4.0. Vous pouvez lire des données à partir des compteurs système, mais vous ne pouvez pas créer ou supprimer des compteurs personnalisés, ni y écrire.

Pour écrire des valeurs dans des compteurs de performance

  1. Créez une instance de PerformanceCounter et configurez-la pour interagir avec la catégorie et le compteur choisis. Pour plus d'informations, consultez Comment : créer des instances du composant PerformanceCounter ou Comment : configurer des instances du composant PerformanceCounter.

  2. Écrivez la valeur en employant l'une des méthodes suivantes :

    Pour

    Appelez la méthode

    Paramètre

    Augmenter de un la valeur brute

    Increment

    Aucun

    Diminuer de un la valeur brute

    Decrement

    Aucun

    Augmenter la valeur brute d'un nombre supérieur à un

    IncrementBy

    Entier positif

    Diminuer la valeur brute d'un nombre supérieur à un

    IncrementBy

    Entier négatif

    Réinitialiser la valeur brute à un nombre entier quelconque, plutôt que de l'incrémenter

    RawValue

    Entier positif ou négatif

    Le code suivant illustre les différentes manières de définir des valeurs pour un compteur. Ce code suppose que vous travaillez dans une application Windows Forms contenant une zone de texte appelée txtValue et trois boutons : un bouton qui incrémente la valeur brute du nombre entré dans la zone de texte, un autre bouton qui la décrémente de un et un dernier bouton qui affecte à la valeur brute du compteur la valeur indiquée dans la zone de texte.

    Private Sub btnIncrement_Click(ByVal sender As System.Object, _
       ByVal e As System.EventArgs) Handles btnIncrement.Click
        PerformanceCounter1.ReadOnly = False
        PerformanceCounter1.IncrementBy(CLng(txtValue.Text))
    End Sub
    
    Private Sub btnDecrement_Click(ByVal sender As System.Object, _
       ByVal e As System.EventArgs) Handles btnDecrement.Click
        PerformanceCounter1.ReadOnly = False
        PerformanceCounter1.Decrement()
    End Sub
    
    Private Sub btnSetValue_Click(ByVal sender As System.Object, _
       ByVal e As System.EventArgs) Handles btnSetValue.Click
        PerformanceCounter1.ReadOnly = False
        PerformanceCounter1.RawValue = CLng(txtValue.Text)
    End Sub
    
     protected void btnIncrement_Click(object sender, EventArgs e)
        {
            performanceCounter1.ReadOnly = false;
            performanceCounter1.IncrementBy(long.Parse(txtValue.Text));
        }
    
        protected void btnDecrement_Click(object sender, EventArgs e)
        {
            performanceCounter1.ReadOnly = false;
            performanceCounter1.Decrement();
        }
    
        protected void btnSetValue_Click(object sender, EventArgs e)
        {
            performanceCounter1.ReadOnly = false;
            performanceCounter1.RawValue = long.Parse(txtValue.Text);
        }
    

Voir aussi

Concepts

Introduction à l'analyse des seuils de performance

Récupération de la valeur d'un compteur de performance