Boost logo

Boost :

From: Christopher Kohlhoff (chris_at_[hidden])
Date: 2006-02-07 07:14:01


Hi Giovanni,

--- "Giovanni P. Deretta" <gpderetta_at_[hidden]> wrote:
<snip>
> A nice solution would be to make socket movable...

Yes, this would be nice, but unfortunately I see problems
reconciling this with some other changes arising from the review
that I want to make :(

Basically, I want the public interface to allow an
implementation that stores state directly in the socket object.
Some of the advantages of doing this include:

- The ability to eliminate per-socket memory allocations.
  Coupled with the custom handler allocation support, you could
  write programs with no ongoing memory allocations occurring
  inside asio.

- Improved performance, e.g. by eliminating many of the hash
  table lookups to find the list of operations associated with a
  descriptor.

Some of this "state" might be that the socket object is part of
an intrusive linked list or hash map. This would make
implementing movability, at best, difficult and inefficient.

Cheers,
Chris


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk