我正在读取 TCP 套接字上的输入行,类似于:
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() 运行时终止连接,则 gets() 挂起。
我该如何解决这个问题?是否有必要进行非阻塞或定时 I/O?