
27 Mar
2007
27 Mar
'07
6:34 a.m.
David Abrahams wrote: [...]
"Everybody" in the C++ community wants cancellation to be an ordinary, stoppable, C++ exception, thrown only synchronously, at well-defined cancellation points.
Or asynchronously from well-defined async-cancel-safe regions (ideally with async-cancel-safety of code inside async_cancel {} regions statically checked by compiler).
Anything else makes writing cancellation-safe code basically untenable. In fact, the only person I know of in *any* community who insists that cancellation must be unstoppable is Ullrich Drepper.
Perhaps someone should try to explain to him that nobody really wants to allow longjmp() from pthread_cleanup_push()'s handlers. regards, alexander.