1

在开发性能监控控制台应用程序时,将什么传递到 getcategories 方法中?:

PerformanceCounter[] pcArr = pc.GetCounters(string instance);

使用无参数重载时,会引发运行时异常:

计数器不是单个实例,需要指定实例名称。

另外,您如何在静态实用程序方法或扩展方法之间做出选择?例如,我可能会经常使用某个实用程序方法,但最好将其添加为扩展方法,这样我就不必一直引用另一个程序集。

谢谢

4

1 回答 1

3

您需要在 GetCounters() 方法中指定实例名称。如果您在“控制面板”->“管理工具”下查看性能监视器。查看“实例”列。这就是您需要赋予该方法的内容。将返回具有相同实例名称的所有计数器。如果该列 '---' 中没有任何内容,则它是单个实例,您不需要传递任何内容。

据我所知,“实例”的原因是可能有多个“设备”需要监控。在处理器类别下,您可以有多个实例,每个处理器一个,我的有一个双核,所以有一个“0”、“1”和“_Total”。内存是单实例(至少在我的机器上)。

我会分别询问您的静态实用程序方法或扩展方法问题。

于 2008-12-24T17:25:29.803 回答