用fork函數,由一個父進程生成兩個子進程

#include<sys/types.h>
#include<unistd.h>
#include<stdio.h>
int main()
{
    pid_t pid;
    int i;
    for(i=0; i<2; i++)
    {
        pid=fork();
        if(pid==0||pid==-1)  //子進程或創建進程失敗均退出
        {
            break;
        }
    }
    if(pid==-1)
    {
        perror("fail to fork!\n");
        exit(1);
    }
    else if(pid==0)
    {
        printf("子進程id=%d,對應父進程id=%d\n",getpid(),getppid());
        exit(0);
    }
    else
    {
        printf("父進程id=%d\n",getpid());
        exit(0);
    }
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章