Como: Recuperar Exemplos de contador de desempenho
Você usa o CounterSample classe para criar Exemplos e executar cálculos em seu Sumário. Uma classe de exemplo executa uma "amostra" de um contador de desempenho com base em critérios definidos.Esses critérios incluem os valores de um ou mais contadores e a freqüência com que valores devem ser fornecidas.Além disso, a classe registra a time em que foram tiradas Exemplos.Você pode coletar todos esses dados em uma única classe instanciado e, em seguida, use o Calculate método para executar um cálculo. Você também pode usar o Calculate método para executar um cálculo que compara valores nos dois exemplos de diferentes.
O cálculo efetuado depende do tipo dos contadores; certos tipos de contador cálculos específicos associados a eles.Por exemplo, os contadores do tipo ElapsedTime comparar o carimbo de data / time nos dois exemplos de diferentes e determinar quanto time tenha decorrido. Muitos contadores efetuar um cálculo averaging com base nos dados recuperados.
Estas são as etapas que você executar para definir uma amostra:
Criar um ou mais instâncias do CounterSample classe.
Recupere uma amostra corrente para cada instância.
telefonar the Calculate método, passando cada amostra a serem incluídos no cálculo sistema autônomo um parâmetro.
Para recuperar Exemplos de contador de desempenho e executar um cálculo
Criar um PerformanceCounter instância e configurá-lo para interagir com a categoria desejada e o contador. Para obter mais informações, consulte Como: Criar instâncias de componentes do contador de desempenho ou Como: Configurar PerformanceCounter componente Instances.
Criar uma instância do CounterSample classe para Isenção os resultados da amostragem.
telefonar the NextSample método na PerformanceCounter instância do componente para recuperar o valor calculado e atribui o resultado para o CounterSample classe.
Dica: Você deve recuperar duas Exemplos para executar um cálculo.
Crie uma variável para manter os resultados do cálculo e dê a ele um tipo de dados de Único.
Para cada um dos dois exemplos que você precisa para o cálculo, atribuir um valor retornado de NextSample a uma variável do tipo CounterSample.
telefonar the Calculate método na CounterSample classe e siga um destes procedimentos:
Se você recuperou duas Exemplos, passar sistema autônomo duas Exemplos (que são armazenadas sistema autônomo CounterSample objetos) para o Calculate método sistema autônomo parâmetros.
Se você recuperar apenas um exemplo, passar o primeiro exemplo para o Calculate método e use o segundo parâmetro para recuperar outro exemplo.
Definiu o resultado do cálculo igual à variável criada para conter o resultado.
Observação: Devem ser duas Exemplos de contadores do mesmo tipo ou o método lançará uma exceção.O tipo de contador determina que tipo de cálculo executadas.Para obter mais informações, consulte Tipos de contador de desempenho.
O código a seguir ilustra como recuperar duas Exemplos e compará-los usando o Calculate método:
' Dim variables of types CounterSample for each sample and a ' variable of type single for the results. Dim sample1 As CounterSample Dim sample2 As CounterSample Dim result As Single ' Retrieve a sample. sample1 = PerformanceCounter1.NextSample() ' Wait some interval of time here and retrieve ' a second sample. System.Threading.Thread.Sleep(1000) sample2 = PerformanceCounter1.NextSample() ' Pass both samples to the Calculate method. result = CounterSample.Calculate(sample1, sample2)
System.Diagnostics.CounterSample sample1; System.Diagnostics.CounterSample sample2; float result; // Retrieve a sample. sample1 = PerformanceCounter1.NextSample(); // Wait some interval of time here and retrieve // a second sample. System.Threading.Thread.Sleep(1000); sample2 = PerformanceCounter1.NextSample(); // Pass both samples to the Calculate method. result = System.Diagnostics.CounterSample.Calculate(sample1, sample2);
Como alternativa, você pode chamar o NextSample método para fornecer os valores para o segundo exemplo. O exemplo a seguir ilustra o uso dessa abordagem:
Dim sample1 As CounterSample Dim result As Single ' Retrieve a single sample. sample1 = PerformanceCounter1.NextSample() ' Pass the retrieved sample to the calculate method ' and retrieve another sample in the second parameter. result = CounterSample.Calculate(sample1, PerformanceCounter1.NextSample())
System.Diagnostics.CounterSample sample1; float result; // Retrieve a single sample. sample1 = PerformanceCounter1.NextSample(); // Pass the retrieved sample to the calculate method // and retrieve another sample in the second parameter. result = System.Diagnostics.CounterSample.Calculate(sample1, PerformanceCounter1.NextSample());
Consulte também
Tarefas
Como: Recuperar valores de contador de desempenho RAW
Como: Recuperar valores de contador de desempenho é calculada
Como: Recuperar listas de contadores e categorias