Задача: в приложении для POSIX-систем, использующем сокеты, понадобилось реализовать тайм-аут на N секунд на чтение. Ваш вариант:
(0) опрос - говно
(1) я не программирую приложения для POSIX-систем, использущее сокеты
(2) изменю алгоритм, чтобы не использовать тайм-аут на чтение из сокета
(3) сделаю setsockopt(... SO_RCVTIMEO...)
(4) воспользуюсь select/poll
(5) воспользуюсь ОС-специфичным решением
(6) сделаю свою реализацию
(7) другой вариант ответа
Комментарии и обоснования выбора приветствуются.