# File lib/memcache.rb, line 573 def cache_get_multi(server, cache_keys) values = {} socket = server.socket socket.write "get #{cache_keys}\r\n" while keyline = socket.gets do return values if keyline == "END\r\n" unless keyline =~ /^VALUE (.+) (.+) (.+)/ then server.close raise MemCacheError, "unexpected response #{keyline.inspect}" end key, data_length = $1, $3 values[$1] = socket.read data_length.to_i socket.read(2) # "\r\n" end server.close raise MemCacheError, "lost connection to #{server.host}:#{server.port}" end