|
Boost : |
From: Peter Dimov (pdimov_at_[hidden])
Date: 2002-01-14 13:58:27
From: "bill_kempf" <williamkempf_at_[hidden]>
> --- In boost_at_y..., "Peter Dimov" <pdimov_at_m...> wrote:
> > Why make users reinvent the cancellation wheel?
>
> They shouldn't have to. Boost.Threads will include cancellation at
> some point. I just want to insure we do it correctly.
OK, no problem with that; but the fact that boost.threads doesn't have
cancellation (how many Ls go into that word?) is a severe limitation.
FWIW here's an old proposal of mine:
http://groups.yahoo.com/group/boost/message/16471
that has been refined in the associated thread (ignore the suspend/resume
part.)
Alexander Terekhov pointed out that some vendors already implement such a
mechanism:
http://tru64unix.compaq.com/docs/base_doc/DOCUMENTATION/V51_PDF/ARH9RBTE.PDF
I've tried to sketch a 'proof of concept' implementation at
http://groups.yahoo.com/group/boost/files/thread_ref/
My opinion is that we should simply ignore the 'catch(...)' issue, and not
support asynchronous cancellation, at least for now. Give the users
something that works.
> In the mean time, cancellation can be simulated trivially in user
> code, and that work around is what Beman wants documented.
My point was that if simulating cancellation is so trivial, we should
include the code that does this in boost.threads, not make users reinvent
it. It will be at least a starting point.
-- Peter Dimov Multi Media Ltd.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk