[prev in list] [next in list] [prev in thread] [next in thread] 

List:       boost
Subject:    Re: [boost] Re: Re[2]: Re: Re: Re: Threads Rewrite?
From:       Bronek Kozicki <brok () rubikon ! pl>
Date:       2004-07-31 15:14:04
Message-ID: 410BB73C.6010508 () rubikon ! pl
[Download RAW message or body]

John Maddock wrote:

> implements exception handling on top of structured exceptions (which should
> always work), where as other compiles do their own thing and rely on some
> global state to work correctly.

MSVC also implements C++ exceptions in terms of SEH. Not most efficient 
and (as I have heard) MSVC8 will deliver option to replace it with some 
other mechanism. I do not think that MSVC would have any problems with 
exceptions handling if started with CreateThread. I believe that MS 
tried to make _beginthread, _beginthreadex and CreateThread somehow 
"equal" citizens, also in C++ world.

Now about SEH exceptions leaking from thread function started with 
CreateThread - it's handling is implemented in core of operating system 
(I'm talking here about Windows NT line of OSes). It's totally 
independent of CRT and will result in process termination (ExitProcess). 
If thread has been started with CRT (_beginthread) result is virtually 
the same - exception won't reach OS, but only because CRT will catch it 
and call _exit.


B.


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic