c、创建 children 和 wait()

c, creating children and wait()

我以为 wait(4) 指令会强制 parent 进程等待它 children 完成但实际上并没有,进程 "hijo2" 首先启动,"padre" 第二和 "hijo1" 第三

int variable = 6;

if (fork() == 0){
    variable = variable -3;
    printf("\nLa variable del proceso hijo1 contiene %d\n", variable);
} else  if (fork()==0){
    variable = variable -3;
    printf("\nLa variable del proceso hijo2 contiene %d\n", variable);      
} else {
    wait(2);//para esperar a que terminen los hijos
    variable = variable +5;
    printf("\nLa variable del proceso padre contiene %d\n", variable);
}
exit(0);

wait 等待 one child 终止。你需要调用它两次。