Windows 性能计数器?

Windows 性能计数器?,windows,performance,windows-server-2003,perfmon,Windows,Performance,Windows Server 2003,Perfmon,我想监控内存(RAM)和物理磁盘的性能,Perfmon中我必须监控的所有计数器是什么?Windows计算机的性能信息存储在注册表的特定部分。您可以使用注册表API枚举计数器并获取其名称和值 这里有一个教程:您没有说明您使用的是托管代码还是非托管代码。如果是后者,您可以使用PerformanceCounter对象,并像这样初始化它 Process currentProcess = System.Diagnostics.Process.GetCurrentProcess(); Performance

我想监控内存(RAM)和物理磁盘的性能,Perfmon中我必须监控的所有计数器是什么?

Windows计算机的性能信息存储在注册表的特定部分。您可以使用注册表API枚举计数器并获取其名称和值


这里有一个教程:

您没有说明您使用的是托管代码还是非托管代码。如果是后者,您可以使用PerformanceCounter对象,并像这样初始化它

Process currentProcess = System.Diagnostics.Process.GetCurrentProcess();
PerformanceCounter pc = new PerformanceCounter();
pc.CategoryName = "Process";
pc.CounterName = "Working Set - Private";
pc.InstanceName = currentProcess.ProcessName;
var myProcessMemoryUsage = (long)pc.NextValue();
例如,上面的代码检索当前进程的私有工作集性能计数器信息

PerformanceCounter pcRam = new PerformanceCounter();
pcRam.CategoryName = "Memory";
pcRam.CounterName = "Available MBytes";
int mem = (int)pcRam.NextValue();
此计数器将以兆字节为单位显示机器上可用的RAM量


您可以查看性能监视器本身中的所有性能计数器。您应该能够同时看到类别和计数器名称。

这可能属于ServerFault。注意:Windows Server 2003上似乎没有Working Set-Private