Boost logo

Boost :

Subject: Re: [boost] [thread] Dividing into Boost.Thread and Boost.Sync
From: Vicente J. Botet Escriba (vicente.botet_at_[hidden])
Date: 2013-08-18 17:31:05


Le 17/08/13 17:58, Oliver Kowalke a écrit :
> 2013/8/17 Andrey Semashev <andrey.semashev_at_[hidden]>
>
>> 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


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk