2012-09-01 30 views
1

我有一個紅寶石套接字客戶端連接到服務器,將隨時關閉連接。 這是我的代碼:紅寶石檢測插座關閉,而recv

@conn = TCPSocket.new address[0], address[1] 
while xml = @conn.recv(4096) 
    // do something 
end 

如何檢測套接字在這裏?

回答

1

您可能已經回答了這個自己,但備案...

的recv的方法塊,直到至少有一個可用字節,或關閉套接字。因此,您可以循環,直到recv返回空字符串:

@conn = TCPSocket.new address[0], address[1] 
while true 
    xml = @conn.recv(4096) 
    break if xml.empty? 
    // do something 
end