|
Boost Users : |
From: Kevin Wheatley (hxpro_at_[hidden])
Date: 2006-10-12 12:50:47
Sascha Seewald wrote:
> yeah! i'd like to see this layer provide more syncronisation related
> functionality like:
>
> - multi threaded containers
like a generic work item queue that buffers between threads, and
should allow for fixed size (blocks when full), growable (but bounded)
and 'unlimited' size policies. This would allow for the pipeline model.
> - futures
> - locking_ptr
Isn't this what shared_ptr already does... I'd like to see a shared
ptr without locking :-)
I'd maybe like something layered upon the thread group concept that
handles event notifications for the group of threads tied in with the
work queue idea. This should work in a generic way so that you would
not need to know if it is a single thread or a collection of them
available to do the work (Boss-Worker Model)
It may be you wish to share the thread groups by considering the type
of work done, e.g. separating I/O threads from CPU bound threads by
putting them in different pools. Under the pipeline model you could
then have separate queues for each stage which signal the appropriate
container of the type of thread that there is work to do.
This is an off the top of my head formulation which is never a good
idea in parallel programming.... so may need refinement :-)
Kevin
-- | Kevin Wheatley, Cinesite (Europe) Ltd | Nobody thinks this | | Senior Technology | My employer for certain | | And Network Systems Architect | Not even myself |
Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net