У меня очень простая программа Ruby, которая действует как «сервер эха». Когда вы подключаетесь к нему через telnet, любой текст, который вы вводите, возвращается обратно. Эта часть работает. Если я добавлю оператор 'putc', чтобы также печатать каждый полученный символ на консоли, на которой запущена программа, выводится только самый первый отображаемый символ. После этого он продолжает отсылать все обратно к telnet-клиенту, но на консоли ничего не печатается.Как отображать символы, полученные через гнездо?
Следующая небольшая, урезанная программа, которая обнаруживает проблему.
Я очень новый для Руби и, вероятно, сделал типичную ошибку новобранец. Что я сделал не так?
require 'socket'
puts "Simple Echo Server V1.0"
server = TCPServer.new('127.0.0.1', '2150')
cbuf = ""
while socket = server.accept
cbuf = socket.readchar
socket.putc cbuf
putc cbuf
end
Спасибо. Знаешь, это было бы что-то очевидное, я бы забыл. – Timm