Module: NewRelic::LanguageSupport::SynchronizedHash

Included in:
Agent::StatsEngine::MetricStats::SynchronizedHash
Defined in:
lib/new_relic/language_support.rb

Class Method Summary collapse

Class Method Details

.included(base) ⇒ Object



26
27
28
29
30
31
32
33
34
35
36
# File 'lib/new_relic/language_support.rb', line 26

def self.included(base)
  # need to lock iteration of stats hash in 1.9.x
  if NewRelic::LanguageSupport.using_version?('1.9') ||
      NewRelic::LanguageSupport.using_engine?('jruby')
    base.class_eval do
      def each(*args, &block)
        @lock.synchronize { super }
      end
    end
  end
end