Mise en parralele de deux programmes

Résolu
archi12 Messages postés 32 Statut Membre -  
archi12 Messages postés 32 Statut Membre -
Bonjour,

Un prog A, écrit en C, doit, dans certaine condition lancer un autre programme B, puis continuer normalement.
J'utilise
system("chemin d'acces/B");
tout se passe bien, B est demarré, mais A est mis en attente jusqu'à la fin de B, ce que je voudrais pas (en plus B peut contenir un sleep() !).
j'ai essayé avec
system("chemin d'acces/B&");
sans plus de chance
une solution ?
merci de votre aide

2 réponses

  1. KX Messages postés 19031 Statut Modérateur 3 020
     
    Plutôt que system, il faudrait regarder la famille des exec :
    http://www.linux-kheops.com/doc/man/manfr/man-html-0.9/man3/execl.3.html

    Et pour faire l'exécution en parallèle, un petit fork sous Linux :
    http://www.linux-kheops.com/doc/man/manfr/man-html-0.9/man2/fork.2.html

    if (fork()==0)
        execve(fichier,argv,envp);
    0
  2. archi12 Messages postés 32 Statut Membre
     
    merci KX,
    mise en parallele par fork, sans wait dans le parent.
    je vais surveiller les pid ...
    merci encore
    0