Skip to Content Skip to Search
Namespace
Methods
L
R
U

Class Public methods

load_interlock()

Execute the supplied block while holding an exclusive lock, preventing any other thread from being inside a run_interlock block at the same time.

# File rails/activesupport/lib/active_support/dependencies.rb, line 38
def self.load_interlock
  Dependencies.interlock.loading { yield }
end

run_interlock()

Execute the supplied block without interference from any concurrent loads.

# File rails/activesupport/lib/active_support/dependencies.rb, line 31
def self.run_interlock
  Dependencies.interlock.running { yield }
end

unload_interlock()

Execute the supplied block while holding an exclusive lock, preventing any other thread from being inside a run_interlock block at the same time.

# File rails/activesupport/lib/active_support/dependencies.rb, line 45
def self.unload_interlock
  Dependencies.interlock.unloading { yield }
end