Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 C Discussion :

Gestion des Processus


Sujet :

C

  1. #1
    Nouveau membre du Club
    Gestion des Processus
    Bonjour,
    Quelqu'un pourrait-il d'il vous plaît m'expliquer combien de processus sont créés à l'issu du programme et pourquoi? Merci
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    const int n=3, m=2; int main()
    { int i,j=0;
    for(i=0; i<n && j<m; i++) { if(fork()==0)
    { i=0; j=j+1;} }
    printf(" j=%d\n",j);
    exit (0); }

  2. #2
    Expert confirmé
    Bonjour,

    Il faut effectuer mentalement le déroulement des processus. En partant du 1er appel à fork(). Je note "-F0" le père et "-Fx" le fils créé au moment fork()
    i=0 j=0 =>
    -F0:
    i=0 j=1 =>
    -F0: ...
    -Fx: ...
    -Fx:
    i=1 j=0 =>
    -F0: ...
    -Fx: ...

    Le nombre de processus est de : 1 (le père initial) + la somme des Fx créés.