[c++-pthreads] Re: pthread_cancel and EH: let's try this again
Gabriel Dos Reis
gdr at integrable-solutions.net
Thu Jul 21 01:41:45 UTC 2005
Mark Mitchell <mark at codesourcery.com> writes:
| Nathan (Jasper) Myers wrote:
| > * During the lifetime of C, the semantics of destructors and catch
| > blocks are undefined if the thread is cancelled and a POSIX C
| > cancellation point is encountered. Any cleanup ends at the scope
| > of C, and control leaves this scope via an ordinary exception.
| > * Outside the scope of a cancellation_context, the effect of
| > pthread_cleanup_push etc. is undefined.
|
| It sounds like you're coming up with entirely new thread semantics
| that have nothing much to do with POSIX thread cancellation, in that
| they seem to leave the POSIX thread cancellation behavior undefined.
|
| The "pthreads" in "c++-pthreads" is specifically because the charter
| for this list is to work out how to combine C++ and *POSIX* threads.
| Any proposal that does not handle POSIX threads is out-of-scope. If
| you can generalize that to handle all threads, great -- but the
| primary goal is to determine the behavior of a C++ program that uses
| POSIX threads.
And I would add that any semantics makes a dichotomy between C++ and
C frames become unmanageable, less useful in practice.
-- Gaby
More information about the c++-pthreads
mailing list