Pid /break

Bonjour,
1-for(i=0;i<4;i++)
2-{pid =fork();
3-if pid>0
4-break;
5-printf("hello processu %d de pere %d \n",getpid(),getppid());}
que devient cette arborescence si on élimine les deux lignes 3 et 4??
je execute ce code et je fait l'elimination des ses deux ligne mais :-(
je pas compris

Et merci
Configuration: Windows XP Internet Explorer 7.0

3 réponses

  1. Modérateur
    Désolée mais je n'ai pas compris ce que tu as dit. Fais un effort sinon je vais être obligée de modérer :s

    Bonne chance
    0
    1. oui je sais mais le probleme quand va eliminer break je n'arrive pas a comprender
      0
      1. Modérateur
        Il suffit de lire la documentation :

        man fork


        (dans une console ou dans google) :

        FORK(2)                                     Manuel du programmeur Linux 
        
        NOM
               fork - Créer un processus fils
        
        SYNOPSIS
               #include <unistd.h>
        
               pid_t fork(void);
        
        ...
        
        VALEUR RENVOYÉE
               En cas de succès, le PID du fils est renvoyé au parent, et  0  est
               renvoyé  au  fils.  En cas d'échec -1 est renvoyé au parent, aucun
               processus fils n'est créé, et errno contient le code d'erreur.


        Donc le if permet ici de vérifier que le processus fils a été créé. Ainsi ce test permet de différencier le code selon qu'on est dans le processus fils ou dans le processus parent.

        Bonne chance
        0