[SIGNAL] threads et processus
Salut,
j'ai une question concernant les signaux dans les threads et fork. Je cherche en fait a voir qu'est ce qui est hérité et qu'est ce qui ne l'est pas. Je fais en fait
Code:
1 2
|
signal(SIGINT, myfunc); |
dans mon processus pere. Mon processus pere fork d'abord plusieurs fois pui s crée 2 threads. J'ai donc un certain nombre de fils et 2 threads. Je cherche lorsque je fais ctrl-c a quitter proprement cad a vider mes sémaphores. Le probleme est qu'en définissant comme ca et dans mon pere seuls les processus fils captent le signal et lance myfunc. Mais il y a donc x tentatives de suppression de sémaphores => ca foire !
Ce que je voudrais c'est juste effacer une seule fois mes sémaphores. J'ai donc pensé à capter le signal ctrl-c dans un seul thread du pere mais il capte rien du tout.
Comment faire???
merci de vos éclaircissements :)