Langage c pb signaux

sky -  
 panderan -
Bonjour,

j'ai un probléme avec les signaux

je comfigure le signaux SIGUSR1 de cette façons :

void handler2(int sig){
printf("fils >> aie \n") ;
}

struct sigaction act2;
act2.sa_handler = handler2;
sigfillset(&act2.sa_mask);

nkp = sigaction(SIGUSR1,&act2,NULL);

aprés je fais une boucle dans lequelle le signal doit s'éxécuter
mais aubout du 2éme tour de boucle le signale ne s'affiche plus :)

je ne sais pas comment faire car aprés sa 1er éxécution le signal ce réinitialise

merci d'avance pour votre aide :)

1 réponse

  1. panderan
     
    Bonjour,
    Essaye :
    int value;

    void handler2(int sig){
    if (value == 0)
    {
    printf("fils >> aie \n") ;
    value = 1;
    }
    }

    int main()
    {
    value = 0;
    //ta boucle
    }

    Tu ne l'afficheras qu'une fois ton printf
    cordialement
    0