[c++-pthreads] Restating the Jason model

Alexander Terekhov boo at terekhov.de
Tue Jan 13 15:11:09 UTC 2004


Dave Butenhof wrote:
[...]
> I'm not entirely sure I understand what you mean here by '"intelligent"
> cancel request delivery". If we discussed it before I don't recall that
> phrase.

I mean "bool std::expected_exception<T>() throw()" thing. "Intelligent" 
cancel request delivery means that cancellation points and async-cancel 
regions shall throw (deliver) std::thread_cancel_request only when 
cancellation is enabled (cancel state is equal to PTHREAD_CANCEL_ENABLE) 
AND "std::expected_exception<std::thread_cancel_request>()" is true at 
throw point (i.e. there's reachable catch handler for it in the dynamic 
context). Throw specs (dtors would have implicit throw() imposed on 
them) would act like "fences"; they should NOT have catch(...) effect.

regards,
alexander.



More information about the c++-pthreads mailing list