Messages in this thread | | | Date | Sat, 2 Jun 2001 20:13:43 -0600 (MDT) | From | <> | Subject | Re: select() - Linux vs. BSD |
| |
On Sat, 2 Jun 2001, Jamie Lokier wrote:
> lost@l-w.net wrote: > > Of course, not looking at the sets upon a zero return is a fairly obvious > > optimization as there is little point in doing so. > > No; a fairly obvious optimisation is to avoid calling FD_ZERO if you > can clear the bits individually when you test them.
That would make sense. HOWEVER, you took my comment out of context. I had pointed out that since the zero return from select() is not an error condition, you can rely on the sets being zeroed out. The zero simply indicates that no descriptors had anything interesting occur and if the sets are not zeroed, the implementation is broken. Upon error, the values are undefined and the value of timeout is undefined. (In this case, doing nothing upon a zero return from select() is perfectly reasonable.)
If I recall, the original posting was about whether the sets were zeroed upon an error condition which a timeout is not defined as in this case.
William Astle finger lost@l-w.net for further information
Geek Code V3.12: GCS/M/S d- s+:+ !a C++ UL++++$ P++ L+++ !E W++ !N w--- !O !M PS PE V-- Y+ PGP t+@ 5++ X !R tv+@ b+++@ !DI D? G e++ h+ y?
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |