protected Method

MemCache.cache_get_multi(server, cache_keys)

Fetches cache_keys from server using a multi-get.

Source Code

# File active_support/vendor/memcache-client-1.5.0/memcache.rb, line 609
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"
    raise_on_error_response! keyline

    unless keyline =~ /\AVALUE (.+) (.+) (.+)/ 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
Comments

Have your say
Please use Textile formatting (click here for a cheat sheet). Use <code/> and <pre/> for code samples.
Click here to login with OpenID to to post comments.