Linux 下使用C++监测某一进程的状态
来源:互联网 发布:loot软件 编辑:程序博客网 时间:2024/05/20 13:10
想要做一个简单的守护进程,就是监测系统中其它进程是否存在,若存在则认为该进程运行中,若不存在,则认为该进程挂掉。当然这样简单的判断很粗糙,先从简单的开始吧
例程转自博客:http://m.blog.csdn.net/buhuizheyangba/article/details/7278631
例程:
#include<unistd.h> #include<sys/types.h> #include<sys/wait.h> #include<stdio.h> #include<stdlib.h> #include<fcntl.h> #include<limits.h> #define BUFSZ PIPE_BUF void err_quit(char *msg) { perror(msg); exit(EXIT_FAILURE); } int main(int argc, char *argv[]) { FILE* fp; int count; char buf[BUFSZ]; char command[150]; if(argc != 2) {printf("USAGE: example <process name>\n"); exit(EXIT_SUCCESS); } elsesprintf(command, "ps -C %s|wc -l", argv[1] ); if((fp = popen(command,"r")) == NULL) err_quit("popen"); if( (fgets(buf,BUFSZ,fp))!= NULL ) {count = atoi(buf); if((count - 1) == 0) printf("%s not found\n",argv[1]); elseprintf("process : %s total is %d\n",argv[1],(count - 1)); } pclose(fp); exit(EXIT_SUCCESS); }
这里面的核心是popen函数,使用该函数就相当于在Terminal中输入命令一样,比较人性化
阅读全文
0 0
- Linux 下使用C++监测某一进程的状态
- Linux下C/C++查找某一进程
- Linux下C/C++查找某一进程
- Linux下C/C++查找某一进程
- Linux下的进程状态
- Linux查找某一进程的PID(c语言)
- Linux下如何查看某一进程的CPU占用率
- Linux下查看某一进程占用资源的情况
- 系统状态监测---进程状态
- Linux基本功九:Linux系统状态监测及进程控制
- Linux下进程的各种状态
- Linux操作系统下如何监测C程序的内存泄露
- Linux系统下如何监测C程序的内存泄露
- Linux监测某一时刻对外的IP连接情况
- 网络状态监测之 Reachability的使用
- 使用AFNetworking进行网络状态的监测
- 网络状态监测Reachability的使用
- Linux状态监测
- Python3中的PyMongo如何使用?
- JDBC
- springmvc学习笔记3
- Web跨域分析与解决
- http问题
- Linux 下使用C++监测某一进程的状态
- 详解Promise的含义
- 51nod1088---最长回文子串(51nod基础:模拟)
- get_brand_wcpay_request:fail
- Anaconda 安装
- C语言:使用realloc()函数重新分配内存
- effect java 学习摘要(2)
- 论文阅读:Cvpr 2017 Sphereface
- MyEclipes常用快捷键