
18 Oct
2006
18 Oct
'06
11:55 p.m.
Dean Michael Berris wrote:
The question would be whether there will be (or whether there already is) a "generic" active object implementation? We've found that Boost.Asio's io_service is a good scheduler/queue and using a futures wrapper for the result types.
An alternative to having an io_service per active object is to have multiple active objects share a single io_service (would these be called "semi-active objects"?). If you also use a strand per active object, then the active objects can even share an io_service with a thread pool calling io_service::run(). The strand will ensure that the operations for a single active object don't execute concurrently. Cheers, Chris