• [^] # Re: Un bout de code ???

    Posté par . En réponse au message Système. Évalué à 1. Dernière modification le 24 octobre 2015 à 19:13.

    Alors je fais comme cà :

    /* fichier.h : définitions des signaux a traiter */
    /* fichier.h : */
     sigset_t sig, oldsig;
     sigemptyset(&sig);
    /* on ajoute les signaux qui nous intéresse a bloquer */
    /* (j'en ai mis beaucoup car je suis pas sur de celui que je cherche ) */
     sigaddset(&sig, SIGINT);
     sigaddset(&sig, SIG_IGN);
     sigaddset(&sig, SIG_DFL);
     sigaddset(&sig, SIGKILL);
     sigaddset(&sig, SIGTSTP);
     sigaddset(&sig, SIGQUIT);
     sigaddset(&sig, SIGSTOP);
     sigaddset(&sig, SIGHUP);
    /* et donc on appel la fonction qui masque les signaux */
     sigprocmask(SIG_BLOCK, &sig, &oldsig);

    dans mon application :

    /* application.c */
    /* appel du bloquer à l'endroit où on peu faire une action */
     fonction() {
     #include fichier.h
     [..] 
     sigprocmask(SIG_SETMASK, &oldsig, NULL);
     return();
    }

    Heu c'est peut être plus clair sans les commentaires.