Ordonnancement processus avec wait()

Ordonnancement processus avec wait() - C - Programmation

Marsh Posté le 09-03-2017 à 11:37:15    

Est ce quelqu'un peux m'expliquer pourquoi la fonction wait() est placé dans cette ordre.
Merci
 

Code :
  1. int main(){
  2. int result1,result2,result3;
  3. result1 = fork();
  4. if(result1 == 0){
  5. result2 = fork();
  6. if(result2 == 0){
  7. result3 = fork();
  8. if(result3 >0)
  9. wait(NULL);
  10. }
  11. else
  12. wait(NULL);
  13. }
  14. else
  15. wait(NULL);
  16. }


Message édité par raghebgmira le 09-03-2017 à 12:55:20
Reply

Marsh Posté le 09-03-2017 à 11:37:15   

Reply

Marsh Posté le 25-03-2017 à 20:51:32    

je ne peux pas savoir si je ne sais pas ce que celà dois faire.

Reply

Marsh Posté le 27-03-2017 à 09:11:11    

Ce sujet a été déplacé de la catégorie Linux et OS Alternatifs vers la categorie Programmation par O'gure


---------------
Relax. Take a deep breath !
Reply

Marsh Posté le 27-03-2017 à 10:47:44    

Bonjour !
 
l'appel système "fork" renvoie :  
* -1 en cas d'erreur (non testé ici)
* 0 Si on est dans le processus fils
* Le pid  du fils si on est dans le processus père.
 
Les appels "wait" se trouvent ici dans les branches d'exécution qui correspondent (à la gestion des erreurs près) au processus père, qui attend, via le "wait" que le processus fils se termine.
 
Sinon, un seul post aurait suffi, à moins, bien sûr, de tenter de battre un record :)


---------------
On n'est jamais très fort pour ce calcul !
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed