Bonjour,

J'ai un code que j'arrive a compendre ce qu'il fait exactement mais pas comment il est executer et surtout l'ordre d'execution. Voila le code
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
int main (void)
{pid_t fils;
do
   {
fils=fork();
    }while (fils==-1)&&(errno==EAGAIN);
if (fils==-1)
{  fprint stderr,"fork() impossible, errno=%d\n,errno); return 1;}
 
if (fils==0) {fprint(stdout,"fils");}
else {fprint(stdout,"pere");}
.....
}
Les questions qui me casse la tete sont :

1/ Quel est l'utilité de if (fils==-1) ?? car pour moi je vois qu'on aura jamais ce cas puisque la boule se charge de l'eleminer

2/pour le pid comment est il censé changer car l'auteur de ce code affiche l'execution qui traite a la fois les deux cas c'est a dire a l'execution s'affiche

fils (infos du fils)

pere (infos du pere)