[SPAM] - Re: [c++-pthreads] Re: FW: RE: Re: I'm Lost - Email found in subject
Ted Baker
baker at cs.fsu.edu
Mon Mar 13 20:35:09 UTC 2006
Maybe two different meanings of "back out"?
a) back out = work your way out of the nest of active subprogram
calls, doing appropriate cleanups
b) back out = stop the cancellation, i.e.,
stop processing the cancellation, and let the thread resume
normal execution
Doing (b) would mean not completing (a).
I think Ulrich and some others expect (a) will always complete,
and so would not like to allow (b).
--Ted
On Thu, Mar 09, 2006 at 08:24:40AM -0800, David Abrahams wrote:
> Jason Merrill <jason at redhat.com> writes:
>
> >> As far as I remember, Ulrich is the only person who has really argued
> >> that it is unambiguously wrong to consider the situation in which a
> >> thread catches a cancellation exception.
> >
> > I don't think he's opposed to catching it, just to doing anything that
> > would involve backing out of the cancellation once it's started.
>
> The inability to do that would prevent several systems that Dave
> B. and I have cited from working properly. These systems, if allowed
> to "back out" from a language/library point-of-view, will unwind
> completely and terminate the thread as though there was no logical
> "backing out," but otherwise will exhibit undefined behavior. So I
> don't think preventing "backing out" at any level that can be enforced
> by the language or library is tenable if you actually want
> cancellation to be able to cancel threads.
>
> --
> Dave Abrahams
> Boost Consulting
> www.boost-consulting.com
More information about the c++-pthreads
mailing list