Sha256: b4b192019448ce8afd368c9745dd64bf8fdc2538dc2ada85a021635db38b8839

Contents?: true

Size: 1.3 KB

Versions: 268

Compression:

Stored size: 1.3 KB

Contents

module ActiveSupport
  module Testing
    module Performance
      module Metrics
        class Base
          protected
            # Ruby 1.9 with GC::Profiler
            if defined?(GC::Profiler)
              def with_gc_stats
                GC::Profiler.enable
                GC.start
                yield
              ensure
                GC::Profiler.disable
              end
            end
        end

        class Memory < DigitalInformationUnit
          # Ruby 1.9 + GCdata patch
          if GC.respond_to?(:malloc_allocated_size)
            def measure
              GC.malloc_allocated_size
            end
          end
        end

        class Objects < Amount
          # Ruby 1.9 + GCdata patch
          if GC.respond_to?(:malloc_allocations)
            def measure
              GC.malloc_allocations
            end
          end
        end

        class GcRuns < Amount
          # Ruby 1.9
          if GC.respond_to?(:count)
            def measure
              GC.count
            end
          end
        end

        class GcTime < Time
          # Ruby 1.9 with GC::Profiler
          if defined?(GC::Profiler) && GC::Profiler.respond_to?(:total_time)
            def measure
              GC::Profiler.total_time
            end
          end
        end
      end
    end
  end
end

Version data entries

268 entries across 224 versions & 25 rubygems

Version Path
mdg-1.0.1 vendor/bundle/ruby/2.3.0/gems/activesupport-3.2.22.5/lib/active_support/testing/performance/ruby/yarv.rb
activesupport-3.2.22.5 lib/active_support/testing/performance/ruby/yarv.rb
activesupport-3.2.22.4 lib/active_support/testing/performance/ruby/yarv.rb
activesupport-3.2.22.3 lib/active_support/testing/performance/ruby/yarv.rb
activesupport-3.2.22.2 lib/active_support/testing/performance/ruby/yarv.rb
activesupport-3.2.22.1 lib/active_support/testing/performance/ruby/yarv.rb
classiccms-0.7.5 vendor/bundle/gems/activesupport-3.2.3/lib/active_support/testing/performance/ruby/yarv.rb
classiccms-0.7.4 vendor/bundle/gems/activesupport-3.2.3/lib/active_support/testing/performance/ruby/yarv.rb
classiccms-0.7.3 vendor/bundle/gems/activesupport-3.2.3/lib/active_support/testing/performance/ruby/yarv.rb
active_mailer-0.0.10 test/fixtures/dummyapp_rails_3.2/vendor/bundle/ruby/1.9.1/gems/activesupport-3.2.12/lib/active_support/testing/performance/ruby/yarv.rb
activesupport-3.2.22 lib/active_support/testing/performance/ruby/yarv.rb
judge-2.0.5 vendor/bundle/ruby/2.1.0/gems/activesupport-3.2.12/lib/active_support/testing/performance/ruby/yarv.rb
activesupport-3.2.21 lib/active_support/testing/performance/ruby/yarv.rb
apl-library-0.0.90 vendor/bundle/ruby/1.8/gems/activesupport-3.2.18/lib/active_support/testing/performance/ruby/yarv.rb
apl-library-0.0.90 vendor/bundle/ruby/2.1.0/gems/activesupport-3.2.18/lib/active_support/testing/performance/ruby/yarv.rb
apl-library-0.0.90 vendor/bundle/ruby/2.1.0/gems/apl-library-0.0.90/vendor/bundle/ruby/1.8/gems/activesupport-3.2.18/lib/active_support/testing/performance/ruby/yarv.rb
apl-library-0.0.90 vendor/bundle/ruby/2.1.0/gems/apl-library-0.0.90/vendor/bundle/ruby/1.9.1/gems/activesupport-3.2.18/lib/active_support/testing/performance/ruby/yarv.rb
apl-library-0.0.90 vendor/bundle/ruby/1.9.1/gems/activesupport-3.2.18/lib/active_support/testing/performance/ruby/yarv.rb
apl-library-0.0.90 vendor/bundle/ruby/2.1.0/gems/apl-library-0.0.90/vendor/bundle/ruby/2.1.0/gems/activesupport-3.2.18/lib/active_support/testing/performance/ruby/yarv.rb
activesupport-3.2.20 lib/active_support/testing/performance/ruby/yarv.rb