[iolib-devel] Patches to make multiplexer use easier

Stelian Ionescu sionescu at common-lisp.net
Mon Dec 14 13:49:32 UTC 2009


On 12/13/2009 12:52 AM, Vladimir Sedach wrote:
>> As for the rest, I'm not inclined to merge them because ultimately I
>> want the muxer to be callback-only and not to expose the details of the
>> OS-specific mechanisms, which I consider to be only internals.
> 
> I don't mind the interface being based on callbacks instead of
> HARVEST-EVENTS, but I also don't see how the current interface is
> simpler or offers more than just exposing
> (UN)MONITOR-FD/UPDATE-FD/HARVEST-EVENTS and a generic mechanism to
> make a MULTIPLEXER. I don't get event-loop.lisp or why I would need
> it, and I definitely don't want synthetic timers in my networking
> code.

It hides the fact that with epoll() you need to set/unset FD flags,
while with kqueue() you add/remove, and select()/poll() have not state
whatsoever. Furthermore, while for the moment only FD events and timers
are supported, I'm planning to add at least two more: signals and file
change notification.

As for the timers, you're not forced to use them, although when working
with the non-blocking sockets IMO they're essential.

-- 
Stelian Ionescu a.k.a. fe[nl]ix
Quidquid latine dictum sit, altum videtur.
http://common-lisp.net/project/iolib




More information about the iolib-devel mailing list