得到cpu占有率的API函数:
GetSystemTimes
得到内存使用情况的API函数:
GlobalMemoryStatusEx Function
Retrieves information about the system's current usage of both physical and virtual memory.
GetPerformanceInfo Function
Retrieves the performance values contained in the PERFORMANCE_INFORMATION structure
获取特定程序的内存使用情况用:
GetProcessMemoryInfo Function
Retrieves information about the memory usage of the specified process.
#define _WIN32_WINNT 0x0501
#include <Windows.h>
#include <iostream>
using namespace std;
__int64 CompareFileTime ( FILETIME time1, FILETIME time2 )
{
__int64 a = time1.dwHighDateTime << 32 | time1.dwLowDateTime ;
__int64 b = time2.dwHighDateTime << 32 | time2.dwLowDateTime ;
return (b - a);
}
void main()
{
HANDLE hEvent;
BOOL res ;
FILETIME preidleTime;
FILETIME prekernelTime;
FILETIME preuserTime;
FILETIME idleTime;
FILETIME kernelTime;
FILETIME userTime;
res = GetSystemTimes( &idleTime, &kernelTime, &userTime );
preidleTime = idleTime;
prekernelTime = kernelTime;
preuserTime = userTime ;
hEvent = CreateEvent (NULL,FALSE,FALSE,NULL); // 初始值为 nonsignaled ,并且每次触发后自动设置为nonsignaled
while (1){
WaitForSingleObject( hEvent,1000 ); //等待500毫秒
res = GetSystemTimes( &idleTime, &kernelTime, &userTime );
int idle = CompareFileTime( preidleTime,idleTime);
int kernel = CompareFileTime( prekernelTime, kernelTime);
int user = CompareFileTime(preuserTime, userTime);
int cpu = (kernel +user - idle) *100/(kernel+user);
int cpuidle = ( idle) *100/(kernel+user);
cout << "CPU利用率:" << cpu << "%" << " CPU空闲率:" <<cpuidle << "%" <<endl;
preidleTime = idleTime;
prekernelTime = kernelTime;
preuserTime = userTime ;
}
}
如何使用C或C++编程获取电脑CPU使用率?如何使用C或C++获取指定进程的C...
int user = CompareFileTime(preuserTime, userTime);int cpu = (kernel +user - idle) *100\/(kernel+user);int cpuidle = ( idle) *100\/(kernel+user);cout << "CPU利用率:" << cpu << "%" << " CPU空闲率:" <<cpuidle << "%" <<endl;preidleTime = idleTime;prekerne...
...硬盘 内存的大小以及已使用大小,加上CPU使用率
运行后结果就能获取当前PC的硬盘大小、已使用大小和CPU的使用率。
C++编程,怎样获取cpu缓存和核心数 急在
获取硬盘空间,使用:GetDiskFreeSpace或GetDiskFreeSpaceEx 获取内存状态,使用:GlobalMemoryStatus或GlobalMemoryStatusEx 获取CPU使用率,使用:NtQuerySystemInformation查询关于处理器性能(SYSTEM_PROCESSOR_PERFORMANCE_INFORMATION)
windows下C\/C++如何获得当前主机的信息:操作系统版本、系统类型、CUP...
int pNum);\/***获取物理内存和虚拟内存大小***\/void GetMemoryInfo(CString &dwTotalPhys,CString &dwTotalVirtual);\/***获取CPU名称、内核数目、主频***\/void GetCpuInfo(CString &chProcessorName,CString
如何用C++编写获取GPU使用率的代码
其实如果你只要读CPU温度或者GPU温度或硬盘参数这种就直接调用WMI接口API就可以
c++获取cpu信息方法是什么?
获取CPU信息方法涉及到对CPUID指令的应用。在C++中实现这一过程,可以遵循以下步骤:首先定义一个名为CPUID的类,包含一个名为GetSerialNumber的成员函数,其功能是获取CPU序列号。函数需要一个SerialNumber类型的参数,用于存储获取到的信息。在GetSerialNumber函数内部,执行CPUID指令,参数设置为eax为1。
c++请写出两种使用当前任务让出CPU占有权的方法?
用软件检测比较准确,比如CPU Z 或者 360硬件大师,这俩比较流行。检测结果比较详细准确。、或者驱动人生驱动精灵上面也都有硬件检测的项目。设备管理器里面显示的不是CPU核心数量 是CPU线程数。单核 显示一个线程数量 单核心,支持超线程,就显示两个线程数量。双核心 显示两个 线程数量 双核 支持...
在Visual C++编程中如何取得CPU的信息
利用利用CPUID 汇编指令(机器码:0FH A2H, 如果你的编译器不支持CPUID 指令,只有emit 机器码了), 该指令可以被如下CPU识别:Intel 486 以上的CPU,Cyrix M1 以上的CPU,AMD Am486 以上的CPU (1) 取CPU OEM 字符串, 判断CPU 厂商 先让EAX=0, 再调用CPUID Inel的CPU将返回:EBX:756E6547...
在linux中如何使用QT来编写C++代码来找出CPU及MEMEROY的使用情况
这是与系统相关的系统编程。我是linux用户,提供下cpu和内存的获取情况的办法:读取\/proc\/cpuinfo能获得cpu的详情 读取\/proc\/meminfo能获取当前内存的使用情况。具体自己解析下就好了。因为\/proc是内存映射的文件系统。所以数据都是实时的。不用担心读文件的效率问题。其实直接读的是内存。
如何用C++获取电脑硬件的信息
其实如果你只要读CPU温度或者GPU温度或硬盘参数这种就直接调用WMI接口API就可以,但其实像“鲁大师”这种程序是自己重写ring0接口程序来获得所有硬件接口信息的,所以需要对底层驱动有很深的了解。我用了一个开源的Lib实现了对所有硬件信息的读取,全部用Ring0完成,C++要用的话需要用Managed C++ ...