At 11:21 PM 7/18/2002, Brian Pane wrote:
I'm almost in complete agreement with this proposal.  We
need a wrapper object to hold the temp pollset so that we
can re-use it for all subsequent poll calls on the same
fd set.

Notice that apr_pollfd_internal_t *int; below _IS_ entirely opaque... [and using a reserved keyword, the member name REALLY sucked... how about simply *private.]

So,
 -1 on the current apr_poll code with the memory leak
 +1 on Bill's proposal to add the apr_pollfd_set_t wrapper object
 -0.5 on making the structures transparent

As long as we have an opaque accessor which we define [and later redefine as needed] I don't see any huge problem with keeping both apr_pollfd_t and apr_pollfd_set_t transparent.

Yes, we need extensible and very private storage, but I think
the design below for apr_pollfd_set_t accomplishes this.

Bill

William A. Rowe, Jr. wrote:

typedef struct {
    apr_pool_t *p;
    apr_pollfd_internal_t *int;
    apr_pollfd_t *first;
    int count;
} apr_pollfd_set_t;




Reply via email to