class Trashed::Instruments::RubyGCProfiler
Public Instance Methods
measure(state, timings, gauges, captured = :GC)
click to toggle source
Captures in-band GC time and stats.
# File lib/trashed/instruments/ruby_gc_profiler.rb, line 11 def measure(state, timings, gauges, captured = :GC) timings[:"#{captured}.time"] ||= 1000 * GC::Profiler.total_time if GC::Profiler.respond_to? :raw_data timings[:"#{captured}.count"] ||= GC::Profiler.raw_data.size timings[:'GC.interval'] = GC::Profiler.raw_data.map { |data| 1000 * data[:GC_INVOKE_TIME] } end # Clears .total_time and .raw_data GC::Profiler.clear end
start(state, timings, gauges)
click to toggle source
Captures out-of-band GC time and stats.
# File lib/trashed/instruments/ruby_gc_profiler.rb, line 5 def start(state, timings, gauges) GC::Profiler.enable measure state, timings, gauges, :OOBGC end