Le 17/08/13 17:58, Oliver Kowalke a écrit :
2013/8/17 Andrey Semashev
We don't plan to extract futures and related stuff, it's too coupled with Boost.Thread. The main goal of Boost.Sync is to provide lightweight building blocks for low level thread synchronization and futures are beyond that.
futures usually depend only on mutex and condition_variable - at least it is possible to implement it this way. Boost.Thread future follows the C++11 standard and the ..._at_thread_exit functions depend deeply on the thread class.
The async function such as it is defined today depends also on boost::thread. Of course, we can provide an async function that has an execution context as parameter that doesn't depend on Boost::thread.
I would vote to decouple boost.future from boost.thread (so it could be used from other execution primitives than threads).
I think we can provide a minimal future abstraction that can be used with other execution contexts, but it would need to have as parameter the associated mutex and condition_variable abstraction, otherwise I don't see how we can do it. Maybe you have found how. If yes, I will be interested in knowing how? Best, Vicente