>
> To continue the recent discussions on the problems in the current
> apr_poll API, here's a patch for apr_poll.h that illustrates my
> proposed fix.
>
> What I'm proposing here is to split the API into two parts:
>
>   - A lightweight, single-function poll API for use (only!)
>     with very small sets of descriptors.  This is basically
>     the current implementation, but with a limit on the number
>     of descriptors that it will accept.  With this limit, we
>     can put the temporary pollfd array on the stack in apr_poll()
>     to eliminate the memory leak.
>
>   - A general-purpose poll API for larger sets of descriptors.
>     This one is an abstract data type, accessible only through
>     functions, so that we can do internal optimizations in the
>     future (like replacing poll with /dev/poll on supported
>     platforms).

Hummm..... I was thinking we would create an entirely new set of APR calls
to encapsulate an event drivent network i/o interface (/dev/poll,
KQEnqueue/KQDequeue, IOCompletion ports, etc.). I'll try to work up an API
this week.

Bill

Reply via email to