[usocket-devel] Re: Fwd: [usocket-cvs] r245 - usocket/trunk/backend

Erik Huelsmann ehuels at gmail.com
Thu Jun 14 10:58:02 UTC 2007


On 6/8/07, Douglas Crosher <dtc at scieneer.com> wrote:
> Hello Erik,
>
> Thank you for keeping the Scieneer CL in mind.  The get-host-name implementation
> does work in the SCL.  An implementation of wait-for-input-internal is attached.

And thank you for your continued contributions! I've committed the
patch last night and updated the website accordingly.

> Changing the wait-for-input-internal function to set a flag in the socket objects
> to indicate they are ready would avoid the need to cons up a list of ready sockets
> which can become very inefficient when managing a large number of connections.

That's true. On the other hand, the efficiency of needing to walk all
provided socket objects to find out which ones changed seems to be the
main objection against the select() system call (which is why poll(),
epoll() and others have been invented, right?).

> Please consider also adding support for write waiting which is necessary when
> writing event loops for servers.  This could be done by adding another flag
> to sockets to indication their waiting direction: :input, :output, :io, or nil.

I'm not only considering that, I really want to provide it, but,
there's a bigger problem (than providing input waiting): while it was
possible to provide input waiting on most implementations, output
waiting is less broadly supported and will require more FFI code. It's
not that I don't want to do that, it just takes more time.

bye,


Erik.



More information about the usocket-devel mailing list