6

在 windows 平台上获得 cpu % 使用率和网络吞吐量的最有效和基本的方法是什么?

如我错了请纠正我...

  1. windows api // Win32? 开发工具包?(c/c++) #对不起,我不知道...
  2. Windows 管理规范 (WMI),
    • Win32_PerfFormattedData_Tcpip_NetworkInterface 类 BytesReceivedPerSec
    • Win32_PerfRawData_PerfOS_Processor 类 PercentProcessorTime
  3. System.Diagnostics PerformanceCounter
  4. 性能数据助手 (PDH) , pdh.dll
  5. PerformanceCounter(c#/.net 框架)还是其他当今的方法?
  6. ntdll.dll中的 NtQuerySystemInformation

那么获取这些值的最佳方法是什么,我只能导入windows.hkernel32.dll来获取cpu 百分比使用率网络接口速度值吗?

谢谢

4

2 回答 2

1

什么是最好的方法

取决于程序的其余部分。在 .NET 中(注意问题上的 C# 标记)WMI 和性能计数器都很容易访问。

从 Win32 API 开始,如果您已经在使用 COM,WMI 可能是最简单的,因为读取性能数据需要大量样板代码(无论您从什么 API 开始)。

于 2011-11-15T09:58:47.053 回答
1

在 C++ 中,我会使用PdhOpenQuery,PdhAddCounter... 不知道 C#,但我想在 .NET 中有一些可用的东西。

于 2011-11-15T09:57:02.040 回答