[Ruby] чтение из сокета неопределенного количества строк

Eugene Scripnik Eugene.Scripnik at itgrp.net
Wed May 7 17:42:28 MSD 2003


vic ismakaev wrote:

>>Проверяй на ! @s.eof
> 
> Увы.Но сервер не возвращает EOF при таких запросах.
> Он просто гонит строки ,оканчивающиеся на "\r\n" либо "\n",либо не гонит 
> ничего.
> А я хочу сделать цикл,который вываливается ,если сервер не возвращает ничего.
> То биш - 
> <цикл>
> сервер> пишет строку в сокет
> клиент> читает строку и что-то с ней делает
> сервер> не пишет строку в сокет(ничего не шлет)
> клиент> вывалится из цикла
> <конец цикла>
> 
> Насколько я понял - надо пользоваться неблокирующим чтением сокета.Но как это 
> сделать - не пойму.:(
Можно перед посылкой строк указывать сколько их будет послано:
server: 3
server: 'aaa'
server: 'bbb'
server: 'bbb'

client:
получил 3, значит читаем 3 строки и выходим

А можно в качестве окончания высылать некую комбинацию (например пустую 
строку или <BLA_BLA>)

-- 
Eugene Scripnik
IT Group
Software Architect
Tel./Fax +380 (372) 58-43-10
email: Eugene.Scripnik at itgrp.net
http://www.itgrp.net/




More information about the Ruby mailing list