Namespace
Module
Class
Methods
Class Public methods
load_interlock(&block)
Execute the supplied block while holding an exclusive lock, preventing any other thread from being inside a run_interlock block at the same time.
📝 Source code
# File activesupport/lib/active_support/dependencies.rb, line 23
def self.load_interlock(&block)
ActiveSupport.deprecator.warn(
"ActiveSupport::Dependencies.load_interlock is deprecated and " \
"will be removed in Rails 9.0. The loading interlock is no longer " \
"used since Rails switched to Zeitwerk for autoloading."
)
yield if block
end
🔎 See on GitHub
run_interlock(&block)
Execute the supplied block without interference from any concurrent loads.
📝 Source code
# File activesupport/lib/active_support/dependencies.rb, line 16
def self.run_interlock(&block)
interlock.running(&block)
end
🔎 See on GitHub
unload_interlock(&block)
Execute the supplied block while holding an exclusive lock, preventing any other thread from being inside a run_interlock block at the same time.
📝 Source code
# File activesupport/lib/active_support/dependencies.rb, line 35
def self.unload_interlock(&block)
interlock.unloading(&block)
end
🔎 See on GitHub