int main(void) {
int id = 0;
for(int i = 1; i < 4; i++) {
if(fork() == 0) {
id = i;
} else {
printf("Process %d created child %d\n", id, i);
}
}
return 0;
}
在上面的代码中,可以根据操作系统如何调度进程执行来生成输出的多个排序(printf 语句)。可能有多少种不同的排序?您可以假设所有 fork 和 printf 调用都成功。
我试图帮助我的学生了解如何解决这个问题,但是当我写考试时,我在这个问题上得到了很好的 0。我希望有人可以解释如何去做?