免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12
最近访问板块 发新帖
楼主: marco_chan
打印 上一主题 下一主题

[函数] 如何调用函数在linux下获取单个进程得内存、CPU使用率 [复制链接]

论坛徽章:
3
CU大牛徽章
日期:2013-03-13 15:15:08CU大牛徽章
日期:2013-03-13 15:26:06CU大牛徽章
日期:2013-03-13 15:26:47
11 [报告]
发表于 2012-08-02 10:48 |只看该作者
献一段代码,供参考:
  1. //获取用户空间的cpu占用率
  2. static float GetUserCpuPercent()
  3. {
  4.         char name[64] = {0};
  5.         char buffer[1024] = {0};
  6.        
  7.         static int user0 = 0, total0 = 0;
  8.         int user1, nice, sys, idle, iowait, irq, softirq, total1 = 0;        
  9.         float fRet = 0.0;

  10.         FILE *fp = fopen("/proc/stat","r");
  11.         if(!fp)
  12.         {
  13.                 fprintf(stderr,"fopen failed:%s\n",strerror(errno));
  14.                 return -1.0;
  15.         }
  16.         fgets(buffer,sizeof(buffer),fp);
  17.         sscanf(buffer,"%s %d %d %d %d %d %d %d",name,&user1,&nice,&sys,&idle,&iowait,&irq,&softirq);
  18.         total1 = user1+nice+sys+iowait+irq+softirq+idle;
  19.         fRet = (user1-user0)*100/(double)(total1-total0);
  20.         user0 = user1;
  21.         total0 = total1;
  22.         fclose(fp);
  23.         return fRet;
  24. }
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP