当前位置:  技术问答>linux和unix

如何判断进程是否存在,防止重复启动?谢谢!

    来源: 互联网  发布时间:2015-03-04

    本文导语:  有代码给出为好! | int detect_process(char * process_name) {         FILE *ptr;         char buff[512];         char ps[128];         sprintf(ps,"ps -e | grep -c ' %s$'",process_name);        ...

有代码给出为好!

|
int detect_process(char * process_name)
{
        FILE *ptr;
        char buff[512];
        char ps[128];

        sprintf(ps,"ps -e | grep -c ' %s$'",process_name);

        strcpy(buff,"ABNORMAL");
        if((ptr=popen(ps, "r")) != NULL)
        {
                while (fgets(buff, 512, ptr) != NULL)
                {
                        if(atoi(buff)>=2)
                        {
                                pclose(ptr);
                                return CONFLICT;
                        }
                }
        }
        if(strcmp(buff,"ABNORMAL")==0)  /*ps command error*/
         return ERROR;        
        pclose(ptr);
        return NOERROR;
}

|
用ps消耗大,你可以给你想查的那个进程发一个消息,看看它能不能接到,这样做的话比较准确。
kill(process_id,用户自定义消息)看看它的return值,在进程中加入对这个消息的捕获。不要处理它就可以了

|
如果用msg来测试进程是否正常,
那可以直接把该进程的PID用msg返回

    
 
 

您可能感兴趣的文章:

  • shell如何判断当前进程是否是当天运行的进程?
  • 如何用shell语句(不用人为判断)kill掉进程列表中所有进程名为aaa的进程?
  • 我要实现当进程打开文件时,根据文件名判断是否符合要求,符合后处理文件,再把文件返回给进程,怎么实现啊
  • 请教怎么根据进程输出的日记文件内容判断来重起进程?
  • 在UNIX下怎么做一个判断一个进程是否关闭?
  • 如何用函数判断某个守护进程处入运行中
  • 判断一个进程的状态
  • 请问如何判断从raw socket发出的包是哪个进程发送的?
  • 中断恢复现场时怎样判断进程运行到那一步,如何无缝连续运行的呢?
  • 有没有办法在打开一个文件之前判断当前是否有进程在使用(读或写)该文件
  • 怎么判断进程名相同
  • ScoOpenServer下的进程产生core,如何判断是哪个程序产生的?
  • 在有无操作系统的时候,如何判断一个进程的结束啊?
  • 在一个进程的主线程中如何判断自己创建的线程是否存在?
  • 在shell中如何判断一个进程是否存在?
  • 子进程怎么知道(判断)父进程被关闭了
  • 如何判断自己的进程是否正常启动
  • 知道pid,如何判断这个进程是否已经结束?
  • C语言 判断进程是否存在的问题
  • (在线等)在shell中如何写一个if语句判断一个进程是否存在
  • C#判断上传文件是否是图片以防止木马上传的方法
  • ASP.NET会员注册登录模块(MD5加密,防止SQL注入,判断是否注册)
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • unix下如何判断一个文件夹是否存在?(也就是某个路径是否存在)
  • shell如何判断文件是否存在,如何判断变量是否为空
  • 请问soralis下怎么写脚本判断进程是否存在,不存在则启动?
  • Oracle删除表前判断表名是否存在若存在则删除
  • JQuery 判断某个属性是否存在hasAttr用法
  • java判断远程服务器上的文件是否存在的方法
  • 如果判断目录下一个文件已经存在与否?
  • 请问如何判断一个文件夹是否存在
  • 请问用什么方法能判断一个文件是否存在,谢谢!
  • jquery怎么判断html元素是否存在
  • mysql 判断记录是否存在方法比较
  • mysql中判断记录是否存在方法比较
  • jQuery怎么判断iframe中元素是否存在
  • oracle用什么SQL语句判断表存不存在
  • informix数据库中怎么判断一个表是否存在?(esql/c)
  • 可不可以在DOS的批处理中间判断某个文件是否存在?
  • 如何判断路径是否存在?stat?opendir?
  • 请教:在程序中创建文件夹,应该用什么函数?怎么判断文件夹存不存在呢?
  • jquery判断元素的子元素是否存在的示例代码
  • 还有,shell中可以判断文件是否存在吗?
  • C++ Vectors 成员 empty():判断Vector是否为空(返回true时为空)
  • linux->shell-> if 条件判断,关于软连接的判断!
  • javascript操作html复选框checkbox:如何判断复选框是否被选中
  • 怎么判断串口已经收到数据,并及时读出?怎么判断串口已经将写入的数据发送完毕?
  • c语言判断某一年是否为闰年的各种实现程序代码
  • 在判断自符是否等于**时,用equals(“**”),那么如果我想判断它的值是否>=2该用什么呢?
  • java实现判断字符串是否全是数字的四种方法代码举例
  • 我是学pb的,判断闰年的是isdate("2-28"),但在java里怎么判断呢?
  • linux 下的自解压文件是什么格式,如何判断文件是否为自解压c++或者脚本判断均可
  • mysql中如何判断当前是字符 mysql判断字段中有无汉字
  • 知道TCP/UDP的包头,如何判断其应用层协议类型,struct tcphdr和 struct udphdr结构中那个变量能判断应用层协议类型。


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3