Boost logo

Boost :

Subject: Re: [boost] [gsoc-2013] Boost.Thread/ThreadPool project
From: Niall Douglas (ndouglas_at_[hidden])
Date: 2013-05-02 12:01:47


> > I have just read N3388 - Using Asio with C++11 and a think I start to
> > understand the ASIO design.
> > Could we say the completion handlers are continuations?
> > And that the user use to master which thread executes the continuation
by
> > calling the io_service::run() function?
>
> Pretty much, except that multiple threads can call io_service::run
> concurrently. Basically Boost.Asio is a work sharing queue plus a
> collection of waitqueues to wait for specific events.

Far clearer than my explanation. Thanks.

> That's orthogonal. Boost.Asio provides the funding blocks. A nicer
> interface that doesn't require an explicit continuation passing style
> transformation can be built with Boost.Context or a similar library.
> But it probably needs a future implementation that integrates with
> ASIO, which is one of the point of Niall Douglas.

Spot on. Especially as parts of ASIO are due to enter with TR2. I worry that
a thread pool designed without ASIO in mind would become an orphan isolate.

Niall

---
Opinions expressed here are my own and do not necessarily represent those of
BlackBerry Inc.



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