Boost logo

Boost :

From: Hamish Mackenzie (hamish_at_[hidden])
Date: 2002-11-24 18:23:27


On Sun, 2002-11-24 at 21:22, Hugo Duncan wrote:
> > is_set -> count (I'm not fussed about this one)
> Not sure about "count", how about something like "active"

Yes, or "contains"?

> > Also for library implementors I think we need
> > update_width()
> > To be called after the OS has updated the fd_set
>
> I saw this in ACE, but couldn't quite work out what it
> was doing?

I have not looked at the code but from what I read in C++NP it scans
fd_set for the highest file_descriptor. I have attached the
implementation of file_descriptor_set I have been using in my code
recently. It needs optimization and I haven't got around to doing the
iterator stuff.

C++NP also points out that knowing the width is important for optimizing
size() an the iterator code. My understanding is that it doesn't much
matter on win32 as the structure of fd_set is different.

I think ACE is an almost perfect model for what we want. The main
things I would like to see done differently in boost are

1) Use namespaces.
2) Support exception handling.
3) Use std containers.
3) Use other boost libraries.

Section A.6.3 in C++NP describes the reasoning behind the absence of
exceptions. But as I described in another post I think we can use a
policy class to support a nothrow interface for people who need it.

Hamish




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