Sha256: 1071bba3095afb9feaa0dbb29d054df3bc19a8e21fee45daa971caf8676b8d06

Contents?: true

Size: 866 Bytes

Versions: 33

Compression:

Stored size: 866 Bytes

Contents

# encoding: utf-8
# This file is distributed under New Relic's license terms.
# See https://github.com/newrelic/rpm/blob/master/LICENSE for complete details.

module Performance
  class Timer
    attr_accessor :start_timestamp, :stop_timestamp, :elapsed

    def initialize
      @start_timestamp = nil
      @stop_timestamp = nil
      @elapsed = 0.0
      @most_recent_start = nil
    end

    def start(t=Time.now)
      @start_timestamp ||= t
      @most_recent_start = t
    end

    def stopped?
      !!@stop_timestamp
    end

    def stop(t=Time.now)
      @stop_timestamp = t
      @elapsed += t - @most_recent_start
    end

    def measure
      start
      yield
      stop
    end

    def inspect
      "<Performance::Timer @start_timestamp=#{start_timestamp.inspect}, @stop_timestamp=#{stop_timestamp.inspect}, elapsed=#{elapsed}>"
    end
  end
end

Version data entries

33 entries across 33 versions & 2 rubygems

Version Path
newrelic_rpm-4.1.0.333 test/performance/lib/performance/timer.rb
newrelic_rpm-4.0.0.332 test/performance/lib/performance/timer.rb
newrelic_rpm-3.18.1.330 test/performance/lib/performance/timer.rb
newrelic_rpm-3.18.0.329 test/performance/lib/performance/timer.rb
newrelic_rpm-3.17.2.327 test/performance/lib/performance/timer.rb
newrelic_rpm-3.17.1.326 test/performance/lib/performance/timer.rb
newrelic_rpm-3.17.0.325 test/performance/lib/performance/timer.rb
newrelic_rpm-3.16.3.323 test/performance/lib/performance/timer.rb
newrelic_rpm-3.16.2.321 test/performance/lib/performance/timer.rb
newrelic_rpm-3.16.1.320 test/performance/lib/performance/timer.rb
newrelic_rpm-3.16.0.318 test/performance/lib/performance/timer.rb
ish_lib_manager-0.0.1 test/dummy/vendor/bundle/ruby/2.3.0/gems/newrelic_rpm-3.15.2.317/test/performance/lib/performance/timer.rb
newrelic_rpm-3.15.2.317 test/performance/lib/performance/timer.rb
newrelic_rpm-3.15.1.316 test/performance/lib/performance/timer.rb
newrelic_rpm-3.15.0.314 test/performance/lib/performance/timer.rb
newrelic_rpm-3.14.3.313 test/performance/lib/performance/timer.rb
newrelic_rpm-3.14.2.312 test/performance/lib/performance/timer.rb
newrelic_rpm-3.14.1.311 test/performance/lib/performance/timer.rb
newrelic_rpm-3.14.0.305 test/performance/lib/performance/timer.rb
newrelic_rpm-3.13.2.302 test/performance/lib/performance/timer.rb