tristram
Guest
non-blocking приводит к пустым данным.
сначала мой icq-клиент работал по принципу: получил данные, обработал, получил следущие. Но, теперь задачи сложнее и возникла необходимость создания очереди пакетов. Для этого требуются не блокирующие сокеты, написал
т.е. говорим что не нужно ждать данные вечно а всего лишь например, 300 000 микросекунд (0.3 сек)
сразу же ругается на то что данные из сокета не получены, ставил 30 секунд - всё равно.
winxpsp2, denver, php 4.3.6
что не так? спасибо заранее.
-~{}~ 21.07.05 04:14:
P.S. при включении блокирования сразу данные приходят естественно.
-~{}~ 21.07.05 04:18:
P.P.S кажись не ставится таймаут, т.к. делаю sleep(1); после коннекта до чтения данных и данные приходят
добрые люди, поскажите как заюзать костыль: как в винде слип сделать на n микросекунд?
сначала мой icq-клиент работал по принципу: получил данные, обработал, получил следущие. Но, теперь задачи сложнее и возникла необходимость создания очереди пакетов. Для этого требуются не блокирующие сокеты, написал
PHP:
/...
socket_set_blocking($this->socket,false);
//...
socket_set_timeout($this->socket,0,300 000);
//...
сразу же ругается на то что данные из сокета не получены, ставил 30 секунд - всё равно.
winxpsp2, denver, php 4.3.6
что не так? спасибо заранее.
-~{}~ 21.07.05 04:14:
P.S. при включении блокирования сразу данные приходят естественно.
-~{}~ 21.07.05 04:18:
P.P.S кажись не ставится таймаут, т.к. делаю sleep(1); после коннекта до чтения данных и данные приходят
