Boost logo

Boost :

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).)

Boost list run by bdawes at, gregod at, cpdaniel at, john at