只需要windows版本的不需要判断是windows还是linux
时间: 2024-10-29 12:09:10 浏览: 8
在Windows平台上,如果你只需要显示CPU占用率而不关心其他平台,可以使用Windows API提供的功能,如`GetProcessTimes`。以下是如何仅在Windows环境中获取CPU占用率的一个示例:
```cpp
#include <windows.h>
// 获取当前进程CPU时间和用户CPU时间
FILETIME creation_time, exit_time, kernel_time, user_time;
GetProcessTimes(GetCurrentProcess(), &creation_time, &exit_time, &kernel_time, &user_time);
// 转换为秒数
LARGE_INTEGER frequency;
QueryPerformanceFrequency(&frequency); // 获取系统频率
double total_seconds = (double)(kernel_time.QuadPart + user_time.QuadPart) / frequency.QuadPart;
// 计算CPU占用率
double cpu_usage = total_seconds / (total_seconds + QueryPerformanceCounter() / frequency.QuadPart);
ImGui::Text("CPU Usage:");
ImGui::Text("%.1f%%", cpu_usage * 100.0f); // 显示百分比
```
这段代码只适用于Windows环境,并假设你在使用C++编写,且已经包含了必要的Windows头文件。
阅读全文