C#中PerformanceCounter组件应用实例
PerformanceCounter组件
1.功能
PerformanceCounter组件可以方便地连接到本地和远程计算机上的性能计数器中,并从这些计数器中检索值。此外,还可以将值写入到本地计算机上现有的自定义计数器(用.NET Framework创建的计数器),并在安装Windows的计算机上创建自己的自定义计数器。图1所示为PerformanceCounter组件。

图1 PerformanceCounter组件
2.属性
PerformanceCounter组件常用属性及说明如表1所示。

表1 PerformanceCounter组件常用属性及说明
下面对比较重要的属性进行详细介绍。
(1)CategoryName属性。
语法:
public string CategoryName { get; set; }
属性值:与此性能计数器相关联的性能计数器类别(性能对象)名称。
(2)CounterName属性。获取或设置与PerformanceCounter实例相关联的性能计数器的名称。
语法:
public string CounterName { get; set; }
属性值:计数器的名称,它一般说明计数的数量。此名称显示,在性能计数器、管理器MMC和管理单元的“添加计数器”对话框的计数器列表。
(3)InstanceLifetime属性。获取或设置进程的生存期。
语法:
public PerformanceCounterInstanceLifetime InstanceLifetime { get; set; }
属性值:PerformanceCounterInstanceLifetime值之一,默认值为Global。PerformanceCounter InstanceLifetime有两个值,其值的名称及作用如下所示。
Global值表示在没有计数器使用进程类别时,移除该性能计数器实例。
Process值表示关闭进程时,移除该性能计数器实例。
(4)ReadOnly属性。获取或设置一个值,该值指示此PerformanceCounter实例是否处于只读模式。
语法:
public bool ReadOnly { get; set; }
属性值:如果PerformanceCounter实例为只读模式(即使计数器本身为自定义.NET Frame work计数器),则为True;如果它为读/写模式,则为False。默认值为构造函数设置的值。
示例
设置PerformanceCounter组件属性值
设置CategoryName属性值、CounterName属性值、InstanceLifetime属性值,示例运行效果如图2所示。

图2 PerformanceCounter组件属性设置
3.方法
PerformanceCounter组件常用方法及说明如表2所示。

表2 PerformanceCounter组件常用方法及说明