代码如下:
pid = fork(); if(pid < 0){...} else if(0 == pid){...} else{....}
1,代码编译执行后,在fork()处创建子进程,书上说子进程与父进程完全一样,那岂不是说子进程也会执行fork()创建一个子子进程???
2,这样就无限循环了,显然不可能,但是,怎么理解子进程与父进程完全一样,pid是在fork处返回的,然后子进程和父进程的关系怎么理解?
熟悉的朋友麻烦帮帮我,多谢多谢!!!
貌似理解了,pid1 = fork(); pid2 = fork(); printf("hello\n");
打印了四次,说明创建了四个进程,第一次调用fork()后创建的子进程是从这里向下执行的,第二个fork()就有了两个进程调用,所以一共有四个进程在执行printf
理解的如果不对麻烦指正,多谢!