From: Beman Dawes (bdawes_at_[hidden])
Date: 2002-01-15 20:48:23
At 12:05 PM 1/15/2002, bill_kempf wrote:
>Cooperative/deferred cancelation most certainly can be done safely
>and effectively in C++. Doing so portably puts a few constraints on
>us. For instance, Boost.Threads is going to have to use an actual
>C++ exception here (I believe), while the standard could just use
>a "kissing cousin" to the exception (i.e. the standard could make the
To add Boost.Threads (or any other threading library) to the C++ standard
will require a number of additions to the standard document. I doubt that
is either surprising or upsetting to most committee members.
AFAIK, however, the current Boost.Threads does not require changes to
current C++ compilers which already support native platform threads.
That makes it a MUCH easier to sell to the compiler vendors, who are well
represented on the committee. They can see that it already works, and
already works with their compiler. It also means users can benefit today,
rather than having to wait for years.
Likewise, there are strong advantages if it is possible to implement
cooperative/deferred cancellation via an actual C++ exception. Compilers
don't have to be changed. We can show that it works. Can be used today.
If the wording in the standard gives the implementors leeway to build in
a more efficient "kissing cousin", fine. But it is a huge win if a
moderately efficient portable (at least between compilers on the same
platform) implementation can be done in standard C++.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk