【发布时间】:2016-12-07 13:59:50
【问题描述】:
假设有一个PID = 1 的进程,它运行以下代码:
int a = fork();
int b = fork();
printf(“a: %d, b: %d\n”, a, b);
让我们进一步假设新的PIDs 将被一一给出,所以第二个给出的PID 将是2,然后是3 等等。
可能的输出是:
a:2, b:3
a:2, b:0
a:0, b:4
a:0, b:0
我在尝试理解上述代码的输出时遇到了一些麻烦,尤其是为什么a:0, b:4 和a:2, b:3。
【问题讨论】: