Boost logo

Boost :

From: Howard Hinnant (howard.hinnant_at_[hidden])
Date: 2007-10-31 22:16:27


On Oct 31, 2007, at 12:45 AM, Johan Nilsson wrote:

> Howard Hinnant wrote:
>> On Oct 28, 2007, at 11:53 AM, Yuval Ronen wrote:
>>
>
> [snip]
>
>>> * Thread cancellation is new, and
>>> disable_cancellation/restore_cancellation are even newer. They are
>>> new for C++ programmers, and maybe new for *all* programmers (I
>>> never
>>> heard
>>> of a language with them). I'm not sure if it's a good idea to
>>> standardize them before we get some real-life experience with thread
>>> cancellation.
>>
>> Actually thread cancellation is old. Many (not all) thread API's
>> have some form or another of cancellation. That being said, the
>> compromise reached at the Kona meeting 4 weeks ago was to remove
>> cancellation (or interruption) from the proposal. This removal is
>> reflected in N2411.
>
> Oh, no. I think thread cancellation is a must-have in general, and
> it would
> be really great to have it within the standard.
>
> It's not that it's a big problem to make/use composite cv
> predicates, where
> one part holds the "cancel" part and the other the real stuff - but
> having
> this in the standard would allow implementations to even cancel e.g.
> unconditional mutex waits.
>
> Sure, C and C++ compatibility would be great - but is this "just" a
> matter
> of principle, or is there a large user base which is only waiting for
> cross-language threading compatibility? I'm certainly not (sorry).

Here's an interesting read on the subject:

http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2455.pdf

For those of you not familiar with the language of standardization,
this is an official letter from the C committee to the C++ committee
saying: "Thank you for removing cancellation. Now we want you to
promise that you will not even discuss bringing it back."

-Howard


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk