我有一个基准测试程序,可以计算时间(以毫秒和滴答为单位),以持久化到 Entity Framework 4.0。有没有办法计算 CPU 负载?我猜我需要查询 Windows 来找出我的 CPU 频率、多少个内核等。这听起来对吗?如果是这样,.NET 框架的哪一部分与查询系统有关?我在猜测 System.Diagnostics?
谢谢,
斯科特
最佳答案
您可以使用 PerformanceCounter(用于系统负载)。
或者,更好的是:
var p = System.Diagnostics.Process.GetCurrentProcess();
var span = p.TotalProcessorTime;
您必须将其与挂钟时间相关联才能获得百分比。另请参阅 UserProcessorTime。
编辑:
再想一想,如果您想进行基准测试,您是否宁愿只测量执行一段代码(例如 System.Diagnostics.Stopwatch 类)所用的时间?
关于c# - 如何以编程方式计算 CPU 利用率?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2608727/