poll (2) был представлен как layer over select (2) в 10.3 и получил собственную реализацию в 10.4.
Большинство современных систем на основе BSD реализовали poll () за последние несколько лет. Если вы получаете реальные выгоды от poll () (вместо select ()), я бы порекомендовал использовать его. Даже в системах, которые все еще эмулируют poll () через select (), в худшем случае ваша производительность будет такой же, как у select () с минимальным штрафом.
Если вы находитесь в ситуации, когда масштабируемость select () никогда не будет приемлемой, системы BSD, как правило, имеют очень настроенный kqueue (2) .