This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Are exception with gcc 2.95.2 thread-safe?


The usual answer to this question is: 

The ANSI/ISO C++ Professional Programmer's Handbook (Danny Kalev) 
"In a multi-threading environment, exception handling should be
thread-safe, but a single threading environment
can implement exception handling in an non-thread-safe manner; this is
implementation-dependent issue." 

I try the attached progam on Linux, Sun, Aix:
In a main procedure, a try block creates a thread, sleep 2s (let the
thread to be run), then throw an exception. We expected that this
exception will be catched in main and the program terminates. But this
program will never terminate and the result is:
Thread has started 
Exception catched in thread 

Is it a bug? Can we use exception in a multi-threading program?

Best regards. 
Aurelien.

main.C


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]