>> This patch introduces EV_ET flag. Whenever you specify EV_ET in >> event_set >> call a specific module will try enforce Edge-Triggered behaviour. > > Well, not exactly. The way the patch is written now, when EV_ET is > set, *and* you're using the epoll backend or the kqueue backend, > you'll get edge-triggered behavior. Otherwise, you get regular > behavior. I'm not sure whether this is the right API or not; it might > make more sense for event_add to give an error when you try to add an > EV_ET event to a backend that doesn't support EV_ET. Alternatively, > we could define the semantics of EV_ET so that instead of meaning > "make this event edge triggered" it means "make this event edge > triggered if possible." > > (This is one of the comments on the sourceforge patch; I'm hoping we > can discuss this more there. Niels: what do you think?)
"make this event edge triggered if possible." is exactly what I've meant. There are two different points of view, which are better not to mix. >From application developer's point of view EV_ET means "make this event edge triggered if possible", since he/she/it should not be dependent on the availability of a particular backend (kqueue/select/poll). >From library developer's point of view EV_ET means "make this event edge triggered" whenever kqueue/epoll is used. -- Best regards, Valery Kholodkov _______________________________________________ Libevent-users mailing list Libevent-users@monkey.org http://monkeymail.org/mailman/listinfo/libevent-users