免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 6930 | 回复: 10
打印 上一主题 下一主题

如何在程序中判断某程序是否在运行? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2003-09-19 13:54 |只看该作者 |倒序浏览

论坛徽章:
0
2 [报告]
发表于 2003-09-19 13:59 |只看该作者

如何在程序中判断某程序是否在运行?

system(ps -ef |grep xxx);

论坛徽章:
0
3 [报告]
发表于 2003-09-19 14:03 |只看该作者

如何在程序中判断某程序是否在运行?

ps -ef|grep ** |wc -l

论坛徽章:
0
4 [报告]
发表于 2003-09-19 14:18 |只看该作者

如何在程序中判断某程序是否在运行?

在程序中如何取得ps返回的结果,也就是说将结果保存在c的变量中.

论坛徽章:
0
5 [报告]
发表于 2003-09-19 14:22 |只看该作者

如何在程序中判断某程序是否在运行?

在程序中如何取得ps返回的结果,也就是说将结果保存在c的变量中.

论坛徽章:
0
6 [报告]
发表于 2003-09-20 17:06 |只看该作者

如何在程序中判断某程序是否在运行?

if u know pid, u can kill(pid,0) to justify

论坛徽章:
0
7 [报告]
发表于 2003-09-22 09:02 |只看该作者

如何在程序中判断某程序是否在运行?

方法有很多,楼上说的都可以,还可以通过处理/proc/下的那些东东来判断!

论坛徽章:
0
8 [报告]
发表于 2003-09-22 09:26 |只看该作者

如何在程序中判断某程序是否在运行?

if(fp = popen("ps -ef|grep 进程名|wc -l", r) == NULL)
         return;
fgets(buf, 200, fp);
sscanf(buf, "%d", &proccount);
return proccount;

论坛徽章:
0
9 [报告]
发表于 2003-09-22 09:31 |只看该作者

如何在程序中判断某程序是否在运行?

很多服务程序在启动时在/var/subsys/下面写一个server.pid文件,里面记录该服务的pid,退出时删除它。

论坛徽章:
0
10 [报告]
发表于 2003-09-22 10:30 |只看该作者

如何在程序中判断某程序是否在运行?

原帖由 "smallfisher" 发表:
if(fp = popen("ps -ef|grep 进程名|wc -l", r) == NULL)
         return;
fgets(buf, 200, fp);
sscanf(buf, "%d", &proccount);
return proccount;
   

是个好办法。我以前是这么做的:
在程序运行的时候产生一个临时文件server.pid,我要判断他是不是运行的时候system我的一个脚本,然后看server.pid在不在。那个脚本是用ps查看是否有该进程,没有就删除对应的server.pid。呵呵,比较笨
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP