From: Oliver Kullmann (O.Kullmann_at_[hidden])
Date: 2005-08-16 13:30:52
I hope I can bother you with some general questions:
1) I've never heard the notion of a "future" in this context
-- what does it mean?
2) How is the relation of your library to the boost thread library?
I only once looked into boost::thread, and I came to the conclusion,
that it wouldn't be usable for me, since the main application for
which I want to use threads is as follows:
Given two functions
bool f1(X x);
bool f2(X x);
I want to compute the logical or (short-circuit!).
Now boost::thread did not support thread cancellation or termination
in version 1_32, and it seems that development of boost::thread has
been cancelled itself.
To cancel a thread is essential to gain the speed-up possible
by the parallel short-circuit evaluation, and thus
boost::thread seems not to be usable.
Now how are you proceeding? In the FAQ's of boost::thread one can read
---- 9. Why isn't thread cancellation or termination provided? There's a valid need for thread termination, so at some point probably will include it, but only after we can find a truly safe (and portable) mechanism for this concept. ---- How do you cancel threads? Can one compute the short-circuit parallel or with your "futures" ?! 3) How is access to common storage handled with you approach?! (I would appreciate a short explanation using not too much jargon --- yet I have only written one multi-threaded program (and that to explore the boost::thread library).) Oliver
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk