linux 关于fork问题
#include<stdio.h>
#include<sys/types.h>
#include<unistd.h>
main(void)
{
pid_t pid;
pid=fork();
if(pid<0)
printf("error in fork");
else if(pid==0)
{
sleep(100);
printf("so\n");
}
else
printf("father\n");
}
为什么程序是执行打印father,就跳出了程序,但是程序没结束,100秒后打印son。
结果为:
[lfy@localhost ~]$ vim fork.c
[lfy@localhost ~]$ gcc -o fork fork.c
[lfy@localhost ~]$ ./fork
father
[lfy@localhost ~]$ so
[lfy@localhost ~]$