Creation de deux fils avec un seul pere
Résolu
Bonjour,
Je n'arrive pas a cree deux fils d'un meme processus sous Linux.
J'ai pensé a faire :
mais cela ne me cree pas deux fils
Pouvez vous m'aider?
Merci
Francois
Je n'arrive pas a cree deux fils d'un meme processus sous Linux.
J'ai pensé a faire :
pid_t fils1;
pid_t fils2;
fils1 = fork();
if (fils1 > 0) {
fils2 = fork();
}
mais cela ne me cree pas deux fils
Pouvez vous m'aider?
Merci
Francois
1 réponse
-
Cet exemple montre comment tu peux faire.
#include <unistd.h> #include <stdio.h> int main() { printf("Je suis ton père (%d)\n", getpid()); pid_t pid1 = fork(); if (pid1 == 0) { printf("Je suis ton fils (%d)\n", getpid()); return 0; } pid_t pid2 = fork(); if (pid2 == 0) { printf("Je suis ta fille (%d)\n", getpid()); return 0; } printf("Je suis ton père (%d)\n", getpid()); return 0; }
Exécution :
(mando@aldur) (~) $ gcc toto.c && ./a.out
Je suis ton père (11532)
Je suis ton père (11532)
Je suis ton fils (11533)
Je suis ta fillei (11534)
Bonne chance