Ruby/Сети: различия между версиями
Содержимое удалено Содержимое добавлено
Byzantine (обсуждение | вклад) орфография, викификатор |
АРГО-67 (обсуждение | вклад) →Построение клиентской части: орфография |
||
Строка 199:
}</source>
Всё замечательно, но программа не работает. Не вся, конечно… Она выводит приглашение к диалогу и всё, дальше виснет. Это связано с тем, что используется метод <code>.read</code>, который считывает весь поток целиком, пока не встретит символ EOF. Его-то наш сервер как раз и не передаёт. Не будем пока спешить и править сервер, а применим один приём: будем использовать не метод <code>.read</code>, а метод <code>.sysread(n)</code>. Метод <code>.sysread(n)</code> считывает первых <code>n</code>
<source lang="ruby">require 'socket'
Строка 281:
* <code>loop{ … }</code>
Используя бесконечный цикл, мы получаем
* <code>if str[/^\+OK/] then … else … end</code>
|