Posez votre question Signaler

Problème C [Résolu]

haduss 220Messages postés 8 avril 2008Date d'inscription 28 décembre 2011Dernière intervention - Dernière réponse le 27 oct. 2009 à 03:13
bonsoir,
j'ai un petit programme qui crée un processus pèere et un processus fils mais il contien des instructions dont je n'ai pas bien saisi leur role dans le programme :/ (je precise je ne suis pas super bon programmation et le language C est assez nouveau pour moi)
bon les instruction sont en gras il y a la boucle while et getchar.merci de m'aider
#include <unistd.h>
#include <stdio.h>
#include <stdlib.h>
int main () {
int i=0,x=10;
int pid=fork();
if (pid<0)
{
printf("Erreur\n");
}
else {
if (pid==0) {
x=20;
printf ("je suis le processus fils,mon PID est %d,x=%d\n",getpid(),x);
while (1) {
i++;}

}
else {
printf ("je suis le processus père, mon PID est %d,x=%d\n",getpid(),x);
getchar();
exit(0);
}
}
return 0;
}
Lire la suite 

Problème C »

2 réponses
Réponse
+1
moins plus
while (1) { i++; }
Alors là on est peinard, on peut aller prendre un café, deux cafés, trois cafés, ... et quand y'en aura plus on aura même le temps d'aller acheter un autre paquet, de le moudre, de refaire chauffer l'eau et de boire un café, deux cafés, ... ;-) Enfin, tu as compris c'est une boucle infinie; en effet, une fois entré dans la boucle, le test '(1)' est toujours vrai et on refait un tour.
getchar();
Là le programme attend que l'utilisateur tape n'importe quelle touche sur son clavier.

Un détail sur le programme:
- Le programme 'père', avant de se terminer, doit attendre que le processus 'fils' se termine et doit lire le code de retour de celui-ci.
Dans le cas présent, le 'fils' va se poursuivre mais n'aura plus de 'père', ce qui est contraire au principe que tout processus doit avoir un 'père' (sauf évidemment le premier processus), et en conséquence ce 'fils' devient ce que l'on appelle un 'zombie'.

Bonne continuation.
Ajouter un commentaire
Réponse
+0
moins plus
mmmh d'accord :D, merci de ta reponse là j'y vois mieux :).bon debut de journée ;)
Ajouter un commentaire
Ce document intitulé « problème C » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
5 extensions si vous voulez revenir à l'ancien Facebook