On Tue, Nov 18, 2003 at 07:50:20PM -0500, Jeff Trawick wrote:
> Brian Havard wrote:
>
> >> Log:
> >> With the removal of apr_poll(), the apr_wait_for_io_or_timeout() function
> >> needed to be rebuilt. Specifically, it needs a pollset, but we don't want
> >> to allocate that all the time. Thus, we need to create it once at socket
> >> or file creation time, and then reuse that pollset.
> >
> >
> > You can't poll a file handle on OS/2 (APR_FILES_AS_SOCKETS == 0) so there's
> > not really much point in having a pollset in the OS/2 apr_file_t, unless
> > there's some grand scheme you're cooking up that I'm unaware of :)
> >
> > Should I go ahead & clean them out?
Yup, please. I had looked for users of the old API within httpd, but
totally forgot to look within APR itself. Thus, I had to do a run-and-gun
change to get everything fixed up. Mostly pattern-based fixes without a
whole lot of thought/investigation of each specific object.
> You can go ahead and clean it out of Unix side too for all I care, and I'll get
> wait_for_io_or_timeout() to work again without the complications of managing
> pollsets that we may never use.
One of the reasons we used apr_poll() was to avoid the #if logic in this
function. If you'd like to replicate that behavior into this function,
then go ahead. I didn't want to do it, though.
Another option that you can choose is to lazy-create the pollset. Use the
pool stored in the file/socket object.
Cheers,
-g
--
Greg Stein, http://www.lyra.org/
|