linux c++(进程相关的函数 & 第四篇 多个子进程回收)

方式一
    if(i == 5)
    {   
        printf("I am is father %d\n",getpid());
        while(1)
        {   
            pid_t wpid = waitpid(-1,NULL,WNOHANG);
            if(wpid == -1) 
            {   
                break;
            }else if(wpid > 0)
            {   
                printf("waitpid wpid=%d\n",wpid);
            }   
        }   
        while(1)
        {   
            sleep(1);
        }   
    }
方式二
      if(i == 5)
      {   
          for (i = 0; i < 5; ++i) {
             pid_t wpid =  wait(NULL);
             printf("回收的pid为: %d\n",wpid);                                     
          }   
          while(1)
          {   
              sleep(1);
          }   
      } 

posted on 2021-05-04 16:02  lodger47  阅读(119)  评论(0)    收藏  举报

导航