已知一个进程的PID,但不知道这个进程是否停止,如何能知道系统中是否有相应的进程在运行。

zxcdewq 2005-09-28 10:24:00
如题
...全文
126 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
wxbfly 2005-09-28
  • 打赏
  • 举报
回复
int kill(pid_t pid, int sig);

指定sig为0,如果返回0,则表明有进程存在,否则检查errno,如果为ESRCH则不存在。

更具体请man 2 kill

yyy790601 2005-09-28
  • 打赏
  • 举报
回复
如果系统支持/proc文件系统,可以
opendir("/proc/PID");

如果不支持:
system("ps ef | grep PID >test");
或者
用ptrace()
vipiii 2005-09-28
  • 打赏
  • 举报
回复
看看/proc下是不是有以pid为名字的目录

23,216

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧