Linux multi-process creation and blocking waiting

#include <stdio.h>
#include"common.h"



int main()
{
    
    
    //定义一些变量
    pid_t pid;
    int status;
    //分岔口创建父子进程
    pid =fork();
    if(pid<0)   //创建进程失败
        {
    
    
        printf("fork failed\n");
        exit(1);        //不正常退出
    }
   else if(pid==0)           //跑子进程
    {
    
    
        sleep(10);//休眠10s钟
        exit(0);
    }
    else
        {
    
    
        wait(&status);     //阻塞等待子进程结束,释放子进程让其脱离僵尸状态
                           //把子进程的退出状态,状态status
        printf("子进程的退出状态:%d\n",WEXITSTATUS(status));
    }
    return 0;
}

Guess you like

Origin blog.csdn.net/weixin_50188452/article/details/110275475