不断获取内存和CPU信息
来源:互联网 发布:seo基础入门教程 编辑:程序博客网 时间:2024/05/28 23:21
DWORD GetCPUInfoPro(COMMAND command, SOCKETclient)//获取内存CPU信息命令
{
//用于保存信息
MEMORYSTATUSEXmemstatusex;
CStringmemory,mycpu;
//设置内存结构大小
memstatusex.dwLength= sizeof(memstatusex);
//CPU
HANDLEhEvent;
BOOLres;
FILETIMEpreidleTime;
FILETIMEprekernelTime;
FILETIMEpreuserTime;
FILETIMEidleTime;
FILETIMEkernelTime;
FILETIMEuserTime;
res= GetSystemTimes(&idleTime, &kernelTime, &userTime);
preidleTime= idleTime;
prekernelTime= kernelTime;
preuserTime= userTime;
hEvent= CreateEvent(NULL, FALSE, FALSE, NULL); // 初始值为 nonsignaled ,并且每次触发后自动设置为nonsignaled
while(true){
//获取系统内存使用情况
GlobalMemoryStatusEx(&memstatusex);
memory.Format("总内存:%I64uM,已使用:%u%%",memstatusex.ullTotalPhys / 1024 / 1024, memstatusex.dwMemoryLoad);
WaitForSingleObject(hEvent,1000); //等待500毫秒
res= GetSystemTimes(&idleTime, &kernelTime, &userTime);
intidle = CompareFileTime(preidleTime, idleTime);
intkernel = CompareFileTime(prekernelTime, kernelTime);
intuser = CompareFileTime(preuserTime, userTime);
intcpu = (kernel + user - idle) * 100 / (kernel + user);
mycpu.Format("CPU使用率:%d",cpu);
COMMANDcmd;
memset((char*)&cmd,0, sizeof(cmd));
cmd.ID= GetCPUInfo;
strcpy((char*)cmd.lparam,memory+mycpu);
send(client,(char*)&cmd, sizeof(cmd), 0);
preidleTime= idleTime;
prekernelTime= kernelTime;
preuserTime= userTime;
}
returnTRUE;
}
- 不断获取内存和CPU信息
- 获取内存和CPU信息
- 获取系统CPU和内存信息
- 获取系统CPU、内存和IO信息
- java获取计算机cpu利用率和内存使用信息
- 利用java获取计算机cpu利用率和内存使用信息
- 使用python获取CPU和内存信息(linux系统)
- Sigar 获取CPU和Memory内存等信息使用详解
- C++ 获取进程内存占用和CPU利用率等信息
- 获取硬盘大小.内存.cpu信息
- 获取CPU,内存使用率,磁盘相关信息
- Android 获取手机内存,cpu使用信息
- java获取cpu,内存,磁盘等信息
- java获取cpu,内存,磁盘等信息
- java获取cpu,内存,磁盘等信息
- java获取cpu、内存、硬盘信息
- Java获取cpu、内存、硬盘信息
- java获取cpu、内存、硬盘信息
- 同步与异步IO、阻塞与非阻塞IO(转载)
- 数据结构实验四 :字符串和多维数组
- 电子音乐及HOUSE的分类知识
- 黑马程序员,Java基础知识四:继承
- 软件测试工具
- 不断获取内存和CPU信息
- URL的使用实例
- MFC获取本机IP
- MySQL自学篇(七)
- Linux启动过程
- 攻击者分析平台
- windows下如何对一个文件有彻底的控制权
- 小心,SpringAOP声明式事务的一个缺陷
- LeetCode[Math]: Excel Sheet Column Title