但是使用PerformanceCounter,获取到的CPU使用率不准确,实际2%,拿到的值是100%
时间: 2024-02-24 10:57:36 浏览: 16
是的,`PerformanceCounter`类获取到的CPU使用率并不是非常准确,尤其是在多个CPU核心的系统上。实际上,`PerformanceCounter`类的CPU使用率计算方式是基于一段时间内CPU运行的总时间和空闲时间的比率,这样的计算方式并不是非常准确。此外,在多核心系统上,`PerformanceCounter`类获取到的CPU使用率可能会超过100%。
如果你需要更精确的CPU使用率信息,可以使用`System.Diagnostics.Process`类来获取当前进程的CPU使用率,或使用第三方库。以下是使用`System.Diagnostics.Process`类获取当前进程的CPU使用率的示例代码:
```csharp
using System.Diagnostics;
// ...
var process = Process.GetCurrentProcess();
var cpuCounter = new PerformanceCounter("Process", "% Processor Time", process.ProcessName, true);
cpuCounter.NextValue();
System.Threading.Thread.Sleep(1000); // 等待一段时间,以获取更准确的值
float cpuUsage = cpuCounter.NextValue() / Environment.ProcessorCount;
```
这个代码会创建一个`PerformanceCounter`对象,将其绑定到`Process`计数器类别的`% Processor Time`计数器上,使用当前进程的进程名作为实例。然后,`NextValue`方法用于获取下一个计数器的值,即当前进程的CPU使用率(以百分比表示)。由于`Process`计数器类别的`% Processor Time`计数器返回的是所有CPU核心的使用率总和,因此需要除以`Environment.ProcessorCount`以获取单个CPU核心的使用率。最后,代码等待一段时间后再次获取CPU使用率,以获取更准确的值。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)