From: Alexander Terekhov (terekhov_at_[hidden])
Date: 2003-05-24 08:54:53
graydon hoare wrote:
> Alexander Terekhov <terekhov_at_[hidden]> writes:
> > Yes. The wrong thing is that NPTL *DOESN'T* "translate" thread
> > cancelation (and thread exit) into a C++ exception... ala
> aha. well, I'm no master of understanding these matters, but having
> now read your exhaustive thread on the matter, I can see that it might
> be nice to translate the cancellation event into a named exception, as
> you write. on the other hand, it also seems to be an implementation
> defined choice how to map into the C++ runtime. so, it may not be
> good, but I think it's at least roughly conformant.
Yeah, that's the problem. Well, keep an eye (it's coming soon) on
the "Upcoming ISO/IEC <thread>... and <pthread.h> -> <cthread>
transition" thread on comp.programming.threads... I'll
pthread_create() it in an hour or two from now.
> what I'm not certain of is whether you think things used to be ok with
> and got *worse* with NPTL,
To some extent, NPTL is certainly MUCH better than rather archaic
linuxthreads. However, don't run a bank (or tank) on it, yet. E.g.:
The latest versions seem to have NOT changed in this respect. Read-
write locking was pretty much broken too (the last time I've looked
at the sources). Well, but "performance" shines, that's true. ;-)
> or whether NPTL is simply
> maintaining what you consider to be not-so-good semantics. you're
> entitled to your opinion, but a regression (against standard-mandated
> behavior) is probably worth filing a bug over.
I don't file bugs, sorry. Well, I've tried to "explain" (pointing
out) one violation of standard-mandated behavior to Ulrich:
He doesn't seem to get it (same problem as with Bill, I guess ;-) ).
> finally: is it your belief that boost::thread will break under NPTL,
> in some not-currently-tested arrangement? that is the point of neal's
> question anyways, and the only thing I really meant to discuss :)
Only testing and, more importantly, NPTL and Boost.Threads *CODE
REVIEW* can answer such questions "for sure". To put it simple,
try it out but don't bet your last cent.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk