本文主要是介绍实现孤儿进程(孤儿进程会被 init 进程收养善后,所以没什么危害),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
有关孤儿进程的讲解:
孤儿进程讲解博客传送门
1 #include <stdio.h>2 #include <stdlib.h>3 #include <errno.h>4 #include <unistd.h>5 6 int main(){7 8 pid_t pid = fork();9 if(pid < 0){10 perror("fork error:");11 exit(1);12 }13 14 if(pid == 0){15 printf("I am a chile process!!! child pid[%d]-----father pid[%d]\n", getpid(), getppid());16 printf("I will sleep 5s, when I wake up, my father have already exited\n");17 sleep(5);18 printf("child pid:[%d]--------father pid[%d]\n", getpid(), getppid());19 printf("child process exit\n");20 }21 else{22 printf("I am father process!!!pid:[%d]\n", getpid()); 23 sleep(1); //保证子进程打印进程id24 printf("father process exit\n");25 }26 return 0;27 }
打印效果:
这篇关于实现孤儿进程(孤儿进程会被 init 进程收养善后,所以没什么危害)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!