Boost logo

Boost :

From: bill_kempf (williamkempf_at_[hidden])
Date: 2002-01-17 12:41:57

--- In boost_at_y..., "Peter Dimov" <pdimov_at_m...> wrote:
> From: "bill_kempf" <williamkempf_at_h...>
> > So, all this discussion leads us to:
> >
> > 1) Use deferred cancellation (and allow the user to turn
> > off).
> > 2) Use a C++ exception for cancellation.
> > 3) Allow the user to catch the exception.
> > 4) Allow the user to "eat" the exception.
> > 5) Make the cancellation "flag" a sticky flag, so if the
user "eats"
> > the exception it will eventually be re-thrown when they call
> > cancellation point.
> > 6) Ensure cancellation points don't throw when uncaught_exception
> > returns true.
> > 7) Document that in general one should always rethrow a caught
> > cancelation exception.
> Yes to all. I'd rephrase 3, 4, and 7 as "normal C++ exception
handling rules
> apply; see a good book on exceptions." ;-)

I'm not sure that 7 is a universal generality for exceptions.

In any event, I'm trying to document our decisions here, not produce
documentation for the use or implementation of Boost.Threads ;).

BTW, I'm working on documentation for boost::thread that should
clarify all of this, as well as bring some of the miscellaney that
people don't like about the current design closer to POSIX. I'll
post either later today or tomorrow, hopefully.

Bill Kempf

Boost list run by bdawes at, gregod at, cpdaniel at, john at