Bonjour,
Je ne comprend pas la déférence entre l'utilisation de wait() dans ces deux codes :
Je sait que wait() dois etre exécuter par le pére pour attendre son fils.
Pourquoi dans le 1er code il y'a un IF qui teste s'il est dans le fils ou non alors dans le 2éme il n'ya pas ce test.
Merci pour votre aide.
code 1 :
Code 2 :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 int main(){ int result1,result2,result3; result1 = fork(); if(result1 == 0){ result2 = fork(); if(result2 == 0){ result3 = fork(); if(result3 >0) wait(NULL); } else wait(NULL); } else wait(NULL); }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 int main() { int result1, result2, result3; result1 = fork(); result2 = fork(); result3 = fork(); if (result3) wait(NULL); if (result2) wait(NULL); if (result1) wait(NULL); }
Partager