Spec-Zone.ru › Ruby on Rails 6.0

класс ActiveSupport::Reloader

Родитель:
ActiveSupport::ExecutionWrapper

Публичные Классовые Методы

after_class_unload(*args, &block) Показать исходный код
# File activesupport/lib/active_support/reloader.rb, line 43
def self.after_class_unload(*args, &block)
  set_callback(:class_unload, :after, *args, &block)
end

Регистрирует обратный вызов, который будет выполнен сразу после разгрузки классов.

before_class_unload(*args, &block) Показать исходный код
# File activesupport/lib/active_support/reloader.rb, line 38
def self.before_class_unload(*args, &block)
  set_callback(:class_unload, *args, &block)
end

Регистрирует обратный вызов, который будет выполнен сразу перед разгрузкой классов.

new() Показать исходный код
# File activesupport/lib/active_support/reloader.rb, line 91
def initialize
  super
  @locked = false
end
Вызывает метод суперкласса
reload!() Показать исходный код
# File activesupport/lib/active_support/reloader.rb, line 50
def self.reload!
  executor.wrap do
    new.tap do |instance|
      instance.run!
    ensure
      instance.complete!
    end
  end
  prepare!
end

Инициировать ручную перезагрузку

to_prepare(*args, &block) Показать исходный код
# File activesupport/lib/active_support/reloader.rb, line 33
def self.to_prepare(*args, &block)
  set_callback(:prepare, *args, &block)
end

Регистрирует обратный вызов, который выполняется один раз при запуске приложения и каждый раз при перезагрузке кода.

wrap() Показать исходный код
# File activesupport/lib/active_support/reloader.rb, line 70
def self.wrap
  executor.wrap do
    super
  end
end

Выполняет переданный блок в качестве единицы работы, перезагружая код при необходимости

Вызывает метод суперкласса ActiveSupport::ExecutionWrapper.wrap

Публичные Методы Экземпляров

release_unload_lock!() Показать исходный код
# File activesupport/lib/active_support/reloader.rb, line 106
def release_unload_lock!
  if @locked
    @locked = false
    ActiveSupport::Dependencies.interlock.done_unloading
  end
end

Освободить блокировку разгрузки, если она была ранее получена

require_unload_lock!() Показать исходный код
# File activesupport/lib/active_support/reloader.rb, line 98
def require_unload_lock!
  unless @locked
    ActiveSupport::Dependencies.interlock.start_unloading
    @locked = true
  end
end

Получить блокировку разгрузки ActiveSupport::Dependencies::Interlock, гарантируя ее автоматическое освобождение

© 2004–2019 David Heinemeier Hansson
Licensed under the MIT License.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API