Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ### MemCache
- # memcache-client 1.5.0
- def set(key, value, expiry = 0, raw = false)
- raise MemCacheError, "Update of readonly cache" if @readonly
- server, cache_key = request_setup key
- socket = server.socket
- value = Marshal.dump value unless raw
- command = "set #{cache_key} 0 #{expiry} #{value.size}\r\n#{value}\r\n"
- begin
- @mutex.lock if @multithread
- socket.write command
- result = socket.gets
- raise MemCacheError, $1.strip if result =~ /^SERVER_ERROR (.*)/
- rescue SocketError, SystemCallError, IOError => err
- server.close
- raise MemCacheError, err.message
- ensure
- @mutex.unlock if @multithread
- end
- end
Add Comment
Please, Sign In to add comment