我一直在学习fork in c,我有这个程序:
int main(void) {
int i;
printf("Start program\n");
printf("This is parent process %d: %d\n", getpid(), i);
int pid = fork();
printf("%d ", pid);
if(pid == 0) {
printf("This is process %d: %d\n", getpid(), i);
}
return 0;
}
Run Code Online (Sandbox Code Playgroud)
这是输出:
Start program
This is parent process 4467: 0
4578 Start program
This is parent process 4467: 0
0 This is process 4578: 0
Run Code Online (Sandbox Code Playgroud)
我不明白为什么父代码被调用两次.