LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 661|回复: 2

ps -lax 怎么只有两个进程

[复制链接]
发表于 2003-8-7 21:23:15 | 显示全部楼层 |阅读模式
#include <cstdio>
#include <unistd.h>

int main()
{
        pid_t pid;

        pid = fork();
        switch (pid)
        {
                case -1:
                {
                        perror("fork failed");
                }
                break ;

                case 0:
                {
                        pid = fork();
                        if (pid == -1)
                        {
                                perror("fork child failed");
                        }
                        else if (pid == 0)
                        {
                                printf("wo shi child child\n");
                                sleep(50);
                                return 0;       
                        }
                        else
                        {
                                printf("wo shi chilid\n");
                                sleep(100);
                                return 0;
                        }
                       
                }
                break ;

                default:
                {
                        printf("wo shi parent\n");
                        sleep(200);
                }
                break ;
        }


        return 0;
}
发表于 2003-8-7 21:27:57 | 显示全部楼层
在程序中用getpid()打印进程号,可以看看究竟有多少进程。
 楼主| 发表于 2003-8-8 09:50:44 | 显示全部楼层

代码是对的,getpid证明他是对的

可是为什么在子和子子进程都是Z态的时候,ps显示不到呢
不知道ps的源码在什么模块,真想看看
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表