Le segment de code suivant prend plus de temps (5s) lorsqu'il est exécuté pour la première fois et prend moins de temps (250 ms) lors des exécutions consécutives. Existe-t-il un meilleur moyen d'exécuter gcc.Une meilleure alternative à fork(), puis execvp ("gcc program.c")?
int pid,status;
char * argv[] = {"gcc","program.c",NULL};
if(!(pid=fork())){
execvp("gcc",argv);
}
while(pid!=wait(&status)){
//do nothing
}
Bien sûr, il y a un meilleur moyen ... stylistiquement. Utilisez execlp et vous n'aurez pas besoin du tableau séparé. :-) –