exceptions et multithreading ?

exceptions et multithreading ? - C++ - Programmation

Marsh Posté le 21-12-2003 à 12:12:25    

Bonjour,  
je m'interroge sur la facon de gérer les exceptions inattendues (comme la manière 1 try/2 catch dans le main http://forum.hardware.fr/forum2.ph [...] 50&cat=10) pour une application avec plusieurs threads.
En effet, si on utilise cette methode que dans le main, s'il se produit une exception non gérée dans un thread autre que le principal, l'exception ne va pas remonter jusqu'au main, le thread va crasher et l'application avec. D'un autre coté, si on crée ce 1 try/2 catch pour chaque thread_entry, le thread générant une erreur sera correctement fermé, mais les autres n'en sauront rien, ce qui peut provoquer par exemple des deadlocks...
Je suppose qu'il faudrait créer une communication pour les exceptions entre les threads, mais je ne vois pas trop la méthode ?


---------------
-( BlackGoddess )-
Reply

Marsh Posté le 21-12-2003 à 12:12:25   

Reply

Marsh Posté le 21-12-2003 à 12:56:29    

va voir chez boost

Reply

Marsh Posté le 21-12-2003 à 20:38:29    

BlackGoddess a écrit :

D'un autre coté, si on crée ce 1 try/2 catch pour chaque thread_entry, le thread générant une erreur sera correctement fermé, mais les autres n'en sauront rien, ce qui peut provoquer par exemple des deadlocks...


ben si tu liberes correctement tes locks
en cas d'exception alors je ne vois pas où est le probleme
 
LeGreg
edit: co****e de clavier Azerty..


Message édité par LeGreg le 21-12-2003 à 22:07:29
Reply

Marsh Posté le 21-12-2003 à 20:39:18    

le tout c'est d'utiliser une API C++, sinon ça sera toujours foireux (à la std::exit)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed