c - 如何在程序输出本身中查看当前进程状态

标签 c bash unix sed grep

如何打印当前进程状态

main ()
{
  pid_t pid;
  printf("parent : %d\n", getpid());
  pid = fork();
  if (pid == 0)
    {
      printf("child : %d\n", getpid());
      sleep(2);
      printf("child exit\n");
      exit(1);
    }
  while (1)
    { /*after the child exit, its a zombie process */
      system("clear");
      system("ps -x | grep t"); /* if a.out is Z means zombie process */
      sleep(8);
    }
}

是否有任何其他方法或方式可以在输出中查看当前进程状态 本身..?

最佳答案

确定进程的调度状态是特定于操作系统的。在 Linux 上,top 和类似的从 /proc/$PID/stat 中的第三个字段读取它。

关于c - 如何在程序输出本身中查看当前进程状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14641254/

相关文章:

C编程: How to Access a Single Character from variable Type char**

c++ - C++中的异或大数

linux - Diff CDF V2 文档

c - EOF是否设置了errno?

bash - 从字符串更改为数组在 Bash 中无法按预期工作

unix - 查找命令 : search with created time

c - 外部数组的地址在编译单元之间不同

c - 如何使用 C 将 SHA1 输出存储到文件

linux - 查找文件并对其名称中包含尾随或前导空格进行 tar

php - 退出时自动重启 PHP 脚本