wait函数
#include <stdio.h>
#include <stdlib.h>
#include <sys/wait.h>
#include <sys/types.h>
#include <unistd.h>
int main()
{
pid_t pid = fork();//创建子进程
if(pid>0){//父进程
int cnt = 0;
int status = 100;
wait(&status);//等待子进程退出,等待过程中形成阻塞
printf("status = %d\n",WEXITSTATUS(status));//将状态码用宏进行解析
while(1){
printf("this is father,pid = %d\n",getpid());
sleep(1);
cnt++;
if(cnt==3){
exit(0);
}
}
}
else if(pid==0){//子进程
int cnt = 0;
while(1){
printf("this is son,pid = %d\n",getpid());
sleep(1);
cnt++;
if(cnt==3){
exit(1);
}
}
}
return 0;
}