
"Peter Dimov" <pdimov@mmltd.net> writes:
Anthony Williams wrote:
On rereading N2178, I just spotted that your call_once has the flag as the first parameter, and allows additional arguments to be passed to the once_function. I like that, and might change my library to match.
I don't see call_once in jss_thread.zip, by the way; maybe you forgot to put it into the archive?
Oops. Thanks for spotting that. I've added it to the archive, and updated it to take multiple arguments in passing.
My focus is primarily on the C++ interface. I am concerned about the cost for implementors of requiring pthreads as the C api, but am not opposed in principle. Certainly, I think a boost.pthread-win32 library would be of benefit.
I'm very much interested in whether you support refactoring Boost.Threads to use a Boost.Pthread layer, and if so, whether you'd like to work on it. I see that you already have most of the underlying pieces in place; even your thread_data can expose an N2178 pthread.h extension interface without much effort.
I'd be willing to help with a Boost.Pthread layer. I would be concerned about layering Boost.Thread on Boost.Pthread, since that seems to me to be too many abstractions. However, if we can make Boost.Thread and Boost.Pthread share stuff under the covers, that would be neat. Maybe implementing it would help relieve my concerns about including pthreads in C++. Anthony -- Anthony Williams Just Software Solutions Ltd - http://www.justsoftwaresolutions.co.uk Registered in England, Company Number 5478976. Registered Office: 15 Carrallack Mews, St Just, Cornwall, TR19 7UL