Bonjour,
je veux exécuter 2 programmes via mon programme. Le premier va s'exécuter lors d'un clic CTRL-C et le deuxième après 3 secondes du clic à l'aide de la fonction alarm().
Le problème est qu'après 3 secondes, le premier programme reste en exécution et le deuxième ne se déclenche pas.
Voilà mon programme :
Merci pr vos renseignements.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 char *fe,*fifo,*fs; void prog1(int sig) { if(sig == SIGINT) { alarm(3); printf("Exécution du prog1\n"); execlp("./prog1","./prog1",fe,fifo,NULL); } } void prog2(int sig) { if(sig == SIGALRM) { printf("Exécution du prog2\n"); execlp("./prog2","./prog2",fifo,fs,NULL); exit(0); } } main(int argc, char * argv[]) { if(argc!=4){printf("No args");exit(1);} fe=argv[1]; fifo=argv[2]; fs=argv[3]; signal(SIGINT,prog1); signal(SIGALRM,prog2); while(1) {} }
Partager