进程的创建–等待–终止
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <errno.h>
int main(void)
{
pid_t pid=fork();//创建进程
if(pid<0)//创建失败
perror("fork"),exit(1);
else if(pid==0){//子进程
printf("chilid\n");
sleep(2);
printf("pid:%d\n",getpid());//获取子进程的进程号
}
else{//父进程
int s;
int r=wait(&s);//回收子进程
printf("parent\n");
printf("r:%d\n",r);//返回子进程的进程号
}
}
结果: