Exportar (0) Imprimir
Expandir todo

PerformanceCounter.NextSample (Método)

Actualización: noviembre 2007

Obtiene un contador de ejemplo y devuelve su valor sin formato o sin calcular.

Espacio de nombres:  System.Diagnostics
Ensamblado:  System (en System.dll)

public CounterSample NextSample()
public CounterSample NextSample()
public function NextSample() : CounterSample

Valor devuelto

Tipo: System.Diagnostics.CounterSample
Objeto CounterSample que representa el siguiente valor sin formato que el sistema obtiene para este contador.

ExcepciónCondición
InvalidOperationException

La instancia no está correctamente asociada a un contador de rendimiento.

O bien,

La propiedad InstanceLifetime se ha establecido en Process pero se está utilizando la memoria compartida global.

Win32Exception

Error al obtener acceso a una API del sistema.

PlatformNotSupportedException

La plataforma es Windows 98 o Windows Millennium Edition (Me), que no admiten contadores de rendimiento.

UnauthorizedAccessException

Código que se ejecuta sin privilegios administrativos para intentar leer un contador de rendimiento.

En general, este método se utiliza para contadores que contienen valores no calculados.

24962748.alert_note(es-es,VS.90).gifNota:

Si el valor para la propiedad InstanceLifetime es Process y la categoría de contador de rendimiento se ha creado con la versión 1.0 o 1.1 de .NET Framework, se produce una excepción InvalidOperationException. Las categorías de contador de rendimiento que se crean con las versiones anteriores utilizan la memoria compartida global y el valor de InstanceLifetime debe ser Global. Si las aplicaciones que se ejecutan con las versiones 1.0 o 1.1 de .NET Framework no utilizan la categoría, elimínela y vuelva a crearla.

24962748.alert_note(es-es,VS.90).gifNota:

Para leer los contadores de rendimiento de Windows Vista, Windows XP Professional x64 Edition o Windows Server 2003, debe ser miembro del grupo Usuarios del Monitor de rendimiento o tener privilegios administrativos.

Para evitar la elevación de los privilegios de acceso a los contadores de rendimiento en Windows Vista, agregue su propio usuario al grupo Usuarios del monitor de sistema.

En Windows Vista, el Control de cuentas de usuario (UAC) determina los privilegios de un usuario. Si es miembro del grupo Administradores integrados, se le asignarán dos símbolos (tokens) de acceso en tiempo de ejecución: un símbolo (token) de acceso de usuario estándar y un símbolo (token) de acceso de administrador. De forma predeterminada, se le asignará la función de usuario estándar. Para ejecutar el código que tiene acceso a los contadores de rendimiento, primero debe elevar el nivel de sus privilegios de usuario estándar a administrador. Puede hacerlo si inicia una aplicación haciendo clic con el botón secundario en el icono de la aplicación e indicando que desea ejecutarla como administrador.

El ejemplo de código siguiente muestra cómo utilizar el método NextSample para obtener el siguiente valor sin calcular de un contador. Este ejemplo de código forma parte de un ejemplo más extenso de la clase PerformanceCounter.

	private static void CollectSamples(ArrayList samplesList)
	{
		
		Random r = new Random( DateTime.Now.Millisecond );

		// Loop for the samples.
		for (int j = 0; j < 100; j++) 
		{
	        
			int value = r.Next(1, 10);
			Console.Write(j + " = " + value);

			PC.IncrementBy(value);

			BPC.Increment();

			if ((j % 10) == 9) 
			{
				OutputSample(PC.NextSample());
				samplesList.Add( PC.NextSample() );
			}
			else
				Console.WriteLine();
	        
			System.Threading.Thread.Sleep(50);
		}

	}


private static void CollectSamples(ArrayList samplesList)
{
    Random r = new Random(DateTime.get_Now().get_Millisecond());
    // Loop for the samples.
    for (int j = 0; j < 100; j++) {
        int value = r.Next(1, 10);
        Console.Write(j + " = " + value);
        pc.IncrementBy(value);
        bpc.Increment();

        if (j % 10 == 9) {
            OutputSample(pc.NextSample());
            samplesList.Add(pc.NextSample());
        }
        else {
            Console.WriteLine();
        }
        System.Threading.Thread.Sleep(50);
    }
} //CollectSamples


Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

.NET Framework y .NET Compact Framework no admiten todas las versiones de cada plataforma. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.

.NET Framework

Compatible con: 3.5, 3.0, 2.0, 1.1, 1.0

Adiciones de comunidad

AGREGAR
Mostrar:
© 2014 Microsoft