PHP: Как записать таймаут на dio_read()?

Я использую dio_read в PHP для захвата ввода с последовательного устройства (в частности, USB IR Toy v2 от опасных прототипов).

Иногда ввод устройства медленный (10+ секунд). Я хотел бы отключить dio_read, но не уверен, как это сделать.

Если кто-то, читающий это сообщение, знает, как, не могли бы вы указать мне направление в правильном направлении? спасибо.

Ответ 1

dio_read в Windows (другие неизвестные платформы) не будет таймаутом, если нет данных для чтения. Невозможно указать тайм-аут или сделать неблокирующее чтение в Windows. http://php.net/dio_read

Ответ 2

Вы можете использовать dio_fctnl(), чтобы установить флаги дескрипторов файла O_NONBLOCK или O_ASYNC