PerformanceCounter.Increment Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Incrementa el contador de rendimiento asociado por uno a través de una operación atómica eficaz.
public:
long Increment();
public long Increment();
member this.Increment : unit -> int64
Public Function Increment () As Long
Devoluciones
Valor de contador incrementado.
Excepciones
El contador es de solo lectura, por lo que la aplicación no puede incrementarla.
O bien
La instancia no está asociada correctamente a un contador de rendimiento.
O bien
La InstanceLifetime propiedad se establece en Process cuando se usa la memoria compartida global.
Error al acceder a una API del sistema.
Comentarios
Solo puede escribir en contadores personalizados. Todos los contadores del sistema son de solo lectura.
Nota:
Los Incrementmétodos , IncrementByy Decrement usan interbloqueos para actualizar el valor del contador. Esto ayuda a mantener el valor de contador preciso en escenarios multiproceso o multiproceso, pero también produce una penalización de rendimiento. Si no necesita la precisión que proporcionan las operaciones interbloqueadas, puede actualizar la RawValue propiedad directamente para una mejora del rendimiento de hasta cinco veces. Sin embargo, en escenarios multiproceso, es posible que se omitan algunas actualizaciones del valor del contador, lo que da lugar a datos inexactos.
Nota:
Si el valor de la InstanceLifetime propiedad es Process y la categoría del contador de rendimiento se creó con .NET Framework versión 1.0 o 1.1, se produce una InvalidOperationException excepción . Las categorías de contadores de rendimiento creadas con versiones anteriores usan memoria compartida global y el valor de InstanceLifetime debe ser Global. Si las aplicaciones que se ejecutan en las versiones 1.0 o 1.1 de .NET Framework no usan la categoría, elimine y vuelva a crear la categoría.
Se aplica a
Seguridad para subprocesos
Este método es seguro para subprocesos.