Обычно этот код оценивается один раз и только тогда, когда часть определения класса , как в:
class Example
# Code here is executed immediately in the order the statements appear
%w[ foo bar baz ].each do |...|
end
def example
# Code here is only run if this method is executed, and only when
# the method is executed.
end
end
Вы можете узнать с помощью «отладки printf»:
class Example
puts "Am I being run once or a whole bunch of times?"
%w[ foo bar baz ].each do |...|
end
end
Где это теперь будет выводить диагностический вывод, который вы можете использовать.
Исключением из этого является среда автозагрузчика Ruby on Rails для разработки, где вещи в app/
будут загружаться один раз для запроса, а не для процесса.