Condividi tramite


Procedura: scrivere valori nei contatori delle prestazioni

Aggiornamento: novembre 2007

È possibile immettere un valore in un contatore incrementando di un numero positivo o negativo il valore corrente non elaborato del contatore. A tale scopo, utilizzare il metodo IncrementBy della classe PerformanceCounter.

Nota:

L'incremento in base a un numero negativo implica il decremento del contatore del valore assoluto del numero. Incrementando di un valore pari a 3, ad esempio, si aumenterà di tre il valore non elaborato del contatore. Incrementando di un valore pari a -3, si diminuirà di tre il valore non elaborato del contatore.

È inoltre possibile utilizzare i metodi Increment e Decrement per aumentare o ridurre di un'unità i valori del contatore. Tali metodi vengono elaborati molto più rapidamente rispetto al metodo IncrementBy.

È possibile incrementare solo i valori dei contatori personalizzati. Per impostazione predefinita, l'accesso ai contatori di sistema tramite un componente PerformanceCounter è in sola lettura. Per incrementare un contatore personalizzato, è prima necessario impostare la proprietà ReadOnly dell'istanza del componente con cui si esegue l'accesso su false.

Nota:

Esistono restrizioni di protezione che influiscono sulla possibilità dell'utente di utilizzare i contatori delle prestazioni. Per ulteriori informazioni, vedere Introduzione al monitoraggio dei valori limite delle prestazioni.

Nota:

La classe PerformanceCounter non è completamente supportata in Microsoft Windows NT versione 4.0. È possibile leggere dai contatori di sistema, ma non è possibile creare o eliminare i contatori personalizzati, né scrivervi.

Per immettere valori nei contatori delle prestazioni

  1. Creare un'istanza della classe PerformanceCounter e configurarla in modo che interagisca con la categoria e il contatore desiderati. Per ulteriori informazioni, vedere Procedura: creare istanze del componente PerformanceCounter o Procedura: configurare istanze del componente PerformanceCounter.

  2. Immettere il valore usando uno dei seguenti metodi:

    Per

    Chiamare il metodo

    Parametro

    Aumentare il valore non elaborato di uno

    Increment

    Nessuno

    Diminuire il valore non elaborato di uno

    Decrement

    Nessuno

    Aumentare il valore non elaborato di un numero maggiore di uno

    IncrementBy

    Un numero integer positivo

    Diminuire il valore non elaborato di un numero maggiore di uno

    IncrementBy

    Un numero integer negativo

    Reimpostare il valore non elaborato su qualsiasi integer, anziché incrementarlo

    RawValue

    Un numero integer positivo o negativo

    Nel codice che segue vengono mostrati diversi metodi per impostare i valori di un contatore. Nel codice si presuppone che si stia utilizzando un'applicazione Windows Form contenente una casella di testo denominata txtValue e tre pulsanti: uno che consente di incrementare il valore non elaborato in base al numero immesso nella casella di testo, uno che consente di ridurre il valore non elaborato di un'unità e uno che consente di impostare il valore non elaborato del contatore sul numero specificato nella casella di testo.

    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);
        }
    

Vedere anche

Concetti

Introduzione al monitoraggio dei valori limite delle prestazioni

Recupero dei valori del contatore delle prestazioni