Как я понимаю, ожидание тайм-аута означает «наличие» тайм-аута. Таким образом, я ожидал бы, что poll () на самом деле проверяет файловые дескрипторы, а затем ждет, если никто не будет готов к тайм-ауту 0 миллисекунд (вообще никакого ожидания). Но дело в том, что он будет просто сигнализировать о доступности fd.
Я также проверил исходный код Linux и, насколько мне известно, так оно и работает: сначала вычисляется «точка ожидания» в будущем, затем проверяется дескриптор файла, затем, если его нет, ждет указанное время.
С уважением,