
Hello Peter, Monday, March 19, 2007, 11:16:29 PM, you wrote:
Hello everyone,
I'd like to start working on a Boost implementation of my threading proposal N2178:
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2178.html
but, as you'll see if you take a look at it, it differs from the current Boost.Threads and Howard Hinnant's competing N2184 in a number of important places, and having two competing libraries in Boost that do the same thing may not be a good idea.
I've only had a first glance at both of these proposals and n2178 looked more natural to me in the way of C++ interface is implemented. The only thing I didn't see in it is TLS support for C++. Is it planned to be proposed later or did I miss it? IMHO, it should be supported in <thread> in some way in order to provide the standard way of destroying thread specific data on thread exit. Maybe thread barriers support would be a nice addition too. Another thing that bothers me is weither pthreads should become a part of the C++ Standard. Yes, it is indeed a wide-spread threading implementation, but should it be mandatory API for any C++-compatible platform? Maybe the <pthread.h> should stay behind the scope of the Standard and <thread> should be official C++ threading support (yet internally it may still be based on pthread or any other low-level API)?
So what would be the best way to proceed?
IMHO, the best way to go on is to evaluate the design. IOW, to implement the proposal and compare it to competitors in a set of wide-spread use cases. -- Best regards, Andrey mailto:andysem@mail.ru