module Dalli::Threadsafe
Make Dalli threadsafe by using a lock around all public server methods.
Dalli::Protocol::Binary.extend(Dalli::Threadsafe)
Public Class Methods
extended(obj)
click to toggle source
# File lib/dalli/options.rb, line 11 def self.extended(obj) obj.init_threadsafe end
Public Instance Methods
alive?()
click to toggle source
Calls superclass method
# File lib/dalli/options.rb, line 21 def alive? @lock.synchronize do super end end
close()
click to toggle source
Calls superclass method
# File lib/dalli/options.rb, line 27 def close @lock.synchronize do super end end
init_threadsafe()
click to toggle source
# File lib/dalli/options.rb, line 59 def init_threadsafe @lock = Monitor.new end
lock!()
click to toggle source
# File lib/dalli/options.rb, line 51 def lock! @lock.mon_enter end
pipeline_abort()
click to toggle source
Calls superclass method
# File lib/dalli/options.rb, line 45 def pipeline_abort @lock.synchronize do super end end
pipeline_next_responses()
click to toggle source
Calls superclass method
# File lib/dalli/options.rb, line 39 def pipeline_next_responses @lock.synchronize do super end end
pipeline_response_setup()
click to toggle source
Calls superclass method
# File lib/dalli/options.rb, line 33 def pipeline_response_setup @lock.synchronize do super end end
request(opcode, *args)
click to toggle source
Calls superclass method
# File lib/dalli/options.rb, line 15 def request(opcode, *args) @lock.synchronize do super end end
unlock!()
click to toggle source
# File lib/dalli/options.rb, line 55 def unlock! @lock.mon_exit end