On Mar 19, 2011, at 8:23 PM, Eric Wong wrote:

> Hello, on some OSes it should be easy to swap out some current
> users of select() for poll().  poll() works better on high-numbered
> file descriptors.
>=20
> I'm not sure how well poll() works for certain FD types =
(FIFO/anonymous
> pipes/various socket types), but I know poll() on Linux works for
> everything I've tried, so I might just enable it only under Linux =
until
> other people can test it on other systems.

For a long time (and maybe still) poll(2) on OS X did not work on fd's =
for ttys. This is/was because poll(2) was implemented with kqueue(2), =
which did not support tty fd's.

I attempted to work around the situation once by detecting if the fd was =
for a tty and using select(2) instead, but in the end it was more hassle =
than it was worth.

Oh, as I type this, I recall on OS X poll(2) also didn't support fd's =
for pipes. Same reason as above, kqueue didn't support them.

 - Evan