
On Friday 30 May 2008 17:41, Giovanni Piero Deretta wrote:
Hum, I think that boost already has such a dispatcher: it is called asio::io_service ;).
IMHO futures wait sets should be used to wait for very few events. If the number of events grows significantly, it is probably a sign that the application would be better redesigned as an event driven state machine. I do not think it is worth optimizing futures for large N.
That's essentially where I started. To do an event driven design requires the ability to generate an event when a future completes. That means a completion callback as part of the future's public interface. A completion callback has been resisted as too dangerous, and waits on groups of futures offered as a safer alternative. Therefore, I'm trying to insist the wait functionality be sufficient to build a decent scheduler on.