module Delayed::Threaded::SyncLifecycle
Constants
- MUTEX
Public Class Methods
extended(base)
click to toggle source
# File lib/delayed/threaded/sync_lifecycle.rb, line 7 def self.extended(base) klass = base.singleton_class klass.send :alias_method, :setup_lifecycle_impl, :setup_lifecycle klass.send :alias_method, :setup_lifecycle, :setup_lifecycle_sync klass.send :private, :setup_lifecycle_impl end
Public Instance Methods
setup_lifecycle_sync()
click to toggle source
# File lib/delayed/threaded/sync_lifecycle.rb, line 14 def setup_lifecycle_sync # not really necessary, but a plugin might expect setup to run exactly once (@lifecycle ||= nil) || synchronize do unless @lifecycle setup_lifecycle_impl #@lifecycle = Delayed::Lifecycle.new #lifecycle = @lifecycle end @lifecycle # make sure returns lifecycle (for DJ < 4.1 compat layer) end end
Private Instance Methods
synchronize(&block)
click to toggle source
# File lib/delayed/threaded/sync_lifecycle.rb, line 29 def synchronize(&block); MUTEX.synchronize(&block) end