duo/mathieu>ah_que
Coucou Coucou duo/mathieu>Coucou Coucou Coucou Coucou Coucou |
La trace de l'ensemble est la suivante :
Père
i = 3 Fork / \ / \ / \ Père Fils i = 2 i = 2 Fork Fork / \ / \ / \ / \ Père Fils Père Fils i = 1 i = 1 i = 1 i = 1 Fork Fork Fork Fork / \ / \ / \ / \ / \ / \ / \ / \ Père Fils Père Fils Père Fils Père Fils i = 0 i = 0 i = 0 i = 0 i = 0 i = 0 i = 0 i = 0 return return return return return return return return |
Chaque fois qu'un processus entre dans la boucle, il se dédouble et ce sont deux processus qui en ressortent, chacun avec la valeur courante de l'indice, d'où la multiplication des processus.
C'est le fils qui affiche "Coucou", d'où 7 affichages.
Le père ne peut se terminer que lorsque ses trois fils ont été lancés, et le c-shell ne peut reprendre la main avant la fin du père, mais les fils peuvent afficher à n'importe quel moment, donc le prompt peut apparaître n'importe où au milieu des messages des fils.