|
Boost : |
Subject: Re: [boost] [context/coroutine] split into two libs in trunk?!
From: Mathias Gaunard (mathias.gaunard_at_[hidden])
Date: 2012-04-13 12:05:05
On 13/04/12 17:53, Jeffrey Lee Hellrung, Jr. wrote:
> On Fri, Apr 13, 2012 at 5:28 AM, Mathias Gaunard<
> mathias.gaunard_at_[hidden]> wrote:
>
>> On 12/04/12 08:37, Jeffrey Lee Hellrung, Jr. wrote:
>>
>> Suggestions for such a single heading, if we go that route: Fiber?
>>> Cooperative?
>>>
>>
>> Boost.Context can be used to implement preemptive (i.e. not cooperative)
>> multithreading.
>>
>
> Is that feasible in practice? (Serious question; I'm not sure.)
A lot of libraries implement user-level threading. Fast context
switching is the most sensitive component.
AFAIK the HPX library, done by several people associated to Boost, uses
code derived from the old Boost.Coroutine for context switching.
Bryce Lelbach told me they didn't move to Boost.Context because it was
slow and had significant scalability problems. I had asked him to give
his experience during the Boost.Context review, but it seems he never did.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk