|
Boost : |
From: Hugo Duncan (hugoduncan_at_[hidden])
Date: 2004-09-15 13:23:53
On Tue, 14 Sep 2004 01:21:13 -0500, Aaron W. LaFramboise
<aaronrabiddog51_at_[hidden]> wrote:
> Well here it is. This is a very sketchy "brain dump" of the general
> form of demultiplexor I have been referring to. I think that it might
> be a basis for something eventually acceptable as a general
> demultiplexor for Boost.
This looks quite similar to what is already in giallo. It adds some things
like a dispatch queue that are not currently in giallo.
Giallo also places the callbacks and the demultiplexer interface into
connection/connector/acceptor classes, providing (IMHO) a clean seperation
of responsabilities:
the socket class thus wraps the native socket functions into a common
interface,
providing platform independent error messages.
the native select and completion ports are also wrapped as objects, which
the proactor and reactor classes use (via a bridge class specified as a
policy)
to provide a consistent demultiplexer interface.
the connection/connector/acceptor manage the state (and lifetime) of the
underlying
socket, use a demultiplexer (proactor or reactor, interchangeably) and
provide the
user with completion callbacks.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk