19 Jan 22:07
Re: Futures - Reviews Needed (January 5, 2009)
Vicente Botet <vicente.botet <at> wanadoo.fr>
2009-01-19 21:07:58 GMT
2009-01-19 21:07:58 GMT
----- Original Message ----- From: "Frank Mori Hess" <fmhess <at> speakeasy.net> To: <boost <at> lists.boost.org> Sent: Monday, January 19, 2009 9:03 PM Subject: Re: [boost] Futures - Reviews Needed (January 5, 2009) On Monday 19 January 2009 13:19, Johan Torp wrote: > > Vicente Botet Escriba wrote: > > >> I would not be surprised if requiring a third thread for future > > >> composition > > >> would render it useless for many of Gaskill's use cases, libpoet and > > >> asio - > > >> which means most of the identified use cases. But I'm far from sure. > > > > > > Could you or someone develop these needs. > > > > The authors of asio, libpoet and Gaskill are best suited to answer if > > Anthony's proposal would be useful to them. > > Unfortunately, I haven't had time to follow the future review threads in > detail, or any changes that may have been made to the submitted library > since I last looked at them many months ago. I can only summarize some > things about the future implementation in libpoet in the hope it will be > helpful in some way. > > As far as composing futures, the poet::future_combining_barrier supports > obtaining a new future whose value is obtained by applying an > arbitrary "combiner" functor to the values from a group of input futures. > The combiner is always executed in a future-waiting thread, not the > promise-fulfilling thread, or a third thread. The implementation relies > on internal signals being emitted immediately when a promise is fulfilled, > as well as internal event queues associated with futures. I described it > a little in this post: > > http://lists.boost.org/Archives/boost/2008/06/138422.php > > > With respect to an O(1) future wait_for_any, I added poet::future_selector, > which is like a future queue which reorders based on the order that the > futures pushed into the queue become ready. > > I was able to use them to reimplement my schedulers for active objects, > without the scheduler using "future is ready" callbacks directly. To be > more clear about my use case: I have a thread which executes method > requests, and each method request has a group of futures associated with > it. The thread's scheduler has a queue of method requests and it selects > a method request to run when all the method request's futures are ready. Hi, I have 3 questions, Can this poet::future_combining_barrier (function?) , poet::future_selector be implemented with the current proposals? If yes there is no issue. If no, what is missing in the current interface to implement them? I see on the web that libPoet have its onw mutexes, exception_ptr, futures, scheduler and much more ... Is libPoet a candidate to be included in Boost or a stand alone library? Do you plan to propose libPoet or part of it to Boost? What about doing a review? It is not too late. Best, Vicente _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
RSS Feed