我需要使用 C# 开发一个评估工具,该工具将在系统上运行数小时,然后显示系统的整体性能。
系统应该运行一项服务,我们想要评估该服务如何影响系统的性能。如果我可以使用“Windows 性能监视器”中可用的性能计数器,那就太好了……我不确定是否有任何 API 可供开发人员使用。
我只是在寻找建议...
谢谢
我需要使用 C# 开发一个评估工具,该工具将在系统上运行数小时,然后显示系统的整体性能。
系统应该运行一项服务,我们想要评估该服务如何影响系统的性能。如果我可以使用“Windows 性能监视器”中可用的性能计数器,那就太好了……我不确定是否有任何 API 可供开发人员使用。
我只是在寻找建议...
谢谢
如果是我,我会使用 perfmon。优点是:
如果需要,您可以包装 perfmon 并以编程方式调用它。最坏的情况只是通过命令行调用它并以这种方式开始/停止收集。
当然,您也可以针对特定应用程序公开自己的性能计数器。对于我在 Windows 上能想到的几乎所有编程环境,都有大量的 API,当然包括 C#。
我强烈建议您使用现有选项,例如自动收集 WPM 统计信息。
否则 C# 可能不是最佳选择,因为硬件几乎完全被运行时从代码中抽象出来。此外,该应用程序可能需要足够的资源和时间来污染您的结果。通常 C++ 和 C# 之间的性能成本可以忽略不计,但在这种情况下可能是一个问题。
祝你好运。