module Dalli::Threadsafe
Make Dalli threadsafe by using a lock around all public server methods.
Dalli::Server.extend(Dalli::Threadsafe)
Public Class Methods
extended(obj)
click to toggle source
# File lib/dalli/options.rb, line 12 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 22 def alive? @lock.synchronize do super end end
close()
click to toggle source
Calls superclass method
# File lib/dalli/options.rb, line 28 def close @lock.synchronize do super end end
init_threadsafe()
click to toggle source
# File lib/dalli/options.rb, line 60 def init_threadsafe @lock = Monitor.new end
lock!()
click to toggle source
# File lib/dalli/options.rb, line 52 def lock! @lock.mon_enter end
multi_response_abort()
click to toggle source
Calls superclass method
# File lib/dalli/options.rb, line 46 def multi_response_abort @lock.synchronize do super end end
multi_response_nonblock()
click to toggle source
Calls superclass method
# File lib/dalli/options.rb, line 40 def multi_response_nonblock @lock.synchronize do super end end
multi_response_start()
click to toggle source
Calls superclass method
# File lib/dalli/options.rb, line 34 def multi_response_start @lock.synchronize do super end end
request(op, *args)
click to toggle source
Calls superclass method
# File lib/dalli/options.rb, line 16 def request(op, *args) @lock.synchronize do super end end
unlock!()
click to toggle source
# File lib/dalli/options.rb, line 56 def unlock! @lock.mon_exit end