PerformanceCounter.Decrement 方法

通过有效的原子操作使关联的性能计数器减一。

**命名空间:**System.Diagnostics
**程序集:**System(在 system.dll 中)

语法

声明
Public Function Decrement As Long
用法
Dim instance As PerformanceCounter
Dim returnValue As Long

returnValue = instance.Decrement
public long Decrement ()
public:
long long Decrement ()
public long Decrement ()
public function Decrement () : long

返回值

减少后的计数器值。

异常

异常类型 条件

InvalidOperationException

该计数器是只读的,因而应用程序无法使之减少。

- 或 -

此实例未与性能计数器正确关联。

- 或 -

使用全局共享内存时,InstanceLifetime 属性设置为 Process

Win32Exception

访问系统 API 时出错。

PlatformNotSupportedException

平台为 Windows 98 或 Windows Millennium Edition (Me),这些平台不支持性能计数器。

备注

只能写入自定义计数器。所有系统计数器都是只读的。

提示

IncrementIncrementByDecrement 方法使用联锁更新计数器值。这有助于在多线程或多进程方案中保持计数器值准确,但同时会导致性能下降。如果不需要联锁操作所提供的准确度,可以直接更新 RawValue 属性以获得多达 5 倍的性能提高。但是,在多线程方案中对计数器值的某些更新可能被忽略,导致数据不准确。

提示

如果 InstanceLifetime 属性的值为 Process 并且性能计数器类别是使用 .NET Framework 版本 1.0 或 1.1 创建的,则会引发 InvalidOperationException。使用早期版本创建的性能计数器类别使用全局共享内存,并且 InstanceLifetime 的值必须为 Global。如果该类别未由在 .NET Framework 版本 1.0 或 1.1 上运行的应用程序使用,请将其删除并重新创建该类别。

.NET Framework 安全性

平台

Windows 98、Windows 2000 SP4、Windows Server 2003、Windows XP Media Center Edition、Windows XP Professional x64 Edition、Windows XP SP2、Windows XP Starter Edition

.NET Framework 并不是对每个平台的所有版本都提供支持。有关受支持版本的列表,请参见系统要求

版本信息

.NET Framework

受以下版本支持:2.0、1.1、1.0

请参见

参考

PerformanceCounter 类
PerformanceCounter 成员
System.Diagnostics 命名空间