Я читаю строки ввода на сокете TCP, похожее на это:Восстановление разбитого TCP сокет в Ruby, когда получает()
class Bla
def getcmd
@sock.gets unless @sock.closed?
end
def start
srv = TCPServer.new(5000)
@sock = srv.accept
while ! @sock.closed?
ans = getcmd
end
end
end
Если конечная точка завершает соединение, пока GetLine() является выполняется, а затем получает() зависает.
Как я могу обойти это? Нужно ли делать неблокирующие или временные операции ввода-вывода?
Малой опечатка там, я считаю, что вы хотели: http://gist.github.com/527750 – rogerdpack 2010-08-16 21:14:08