为什么
int main(...) {
fork();
printf("hello again\n");
exit(0);
}
不创建无限数量的进程? 我理解如下,主进程创建一个子进程,子进程创建另一个子进程,等等。
答案 0 :(得分:7)
在父级和子级的fork之后继续执行,它不会重新启动程序。
答案 1 :(得分:3)
父进程在调用fork()
的执行点处“克隆”,并且两个进程都从那里继续进行。通过再次调用main(),子进程不会重新开始。