bonjour
je cherche une fonction systeme pour savoir si un processus fils s'est terminé ou pas encore.
j'ai essayé waitpid mais je ne sais pourquoi ça marche pas
bonjour
je cherche une fonction systeme pour savoir si un processus fils s'est terminé ou pas encore.
j'ai essayé waitpid mais je ne sais pourquoi ça marche pas
Ma boule de cristal est chez le garagiste.
Et si tu nous montrais ton code en attendant ?
voila je veux
Liste *maliste=(void*)0;
void Liste_Process(Liste *liste)
{
Liste *cour = liste;
int i=0;
// char* liste_vide=0;
if (liste==0){
printf("aucun processus n'a été lancé en tache de fond\n");
}else{
printf("liste des processus lancés en tache de fond\n");
printf("PID\t\tCMD\n");
while (cour!=(void*)0){
/* test si le processus est encore en cours d'execution**/
if (waitpid(cour->pid,NULL,WNOHANG)){
printf("%d\t\t",cour->pid);
for(i=0;cour->commande[i]!=0;i++){
printf("%s ",cour->commande[i]);
}
}
printf("\n");
cour=cour->suivant;
i=0;
}
}
printf("je sors de la liste");
}
la liste je la remplis ailleurs , etListe_Process ne doit imprimer que les processus en cours d'execution.
ma structur liste contient trois champs
- nom de la commande
- le pid du processus qui l'execute
- suivant :Liste
typedef struct S_liste Liste;
struct S_liste {
char** commande;
int pid;
struct S_liste *suivant;
} ;
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager