C: Signal et recursivite
flopklop
-
Char Snipeur Messages postés 10112 Date d'inscription Statut Contributeur Dernière intervention -
Char Snipeur Messages postés 10112 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Je bute sur l'utilisation de la fonction signal. Mon problème est le suivant:
J'attend mon signal (un sigusr 10 par exemple).
Une fois obtenu, ma fonction handler s'occupe de rappeler ma fonction d'attente du signal.
Le hic, c'est qu'a ce moment la, si je recoi le même signal que précédemment, (sigusr 10), ca ne fait... rien. Et si je lui envoi un autre signal (12 par exemple), lui aussi accepte par mes gestionnaire de signaux, il fonctionne. Mais qu'une seule fois, puis bug similaire.
Donc, voila ma question: y'a t'il quelque chose a ré initialiser par rapport a signal ?
Bien que je sois sous Linux, j'ai essaye réarmer signal en la rappelant dans mon handler, mais ce ne change rien.
Je bute sur l'utilisation de la fonction signal. Mon problème est le suivant:
J'attend mon signal (un sigusr 10 par exemple).
Une fois obtenu, ma fonction handler s'occupe de rappeler ma fonction d'attente du signal.
Le hic, c'est qu'a ce moment la, si je recoi le même signal que précédemment, (sigusr 10), ca ne fait... rien. Et si je lui envoi un autre signal (12 par exemple), lui aussi accepte par mes gestionnaire de signaux, il fonctionne. Mais qu'une seule fois, puis bug similaire.
Donc, voila ma question: y'a t'il quelque chose a ré initialiser par rapport a signal ?
Bien que je sois sous Linux, j'ai essaye réarmer signal en la rappelant dans mon handler, mais ce ne change rien.