Flowdock
method

profile

Importance_0
v3.2.1 - Show latest stable - 0 notes - Class: RequireProfiler
profile(file) private

No documentation

This method has no description. You can help the Ruby on Rails community by adding new notes.

Hide source
# File tools/profile, line 25
    def profile(file)
      stats << [file, depth]
      self.depth += 1
      heap_before, objects_before = GC.allocated_size, ObjectSpace.allocated_objects
      result = nil
      elapsed = Benchmark.realtime { result = yield }
      heap_after, objects_after = GC.allocated_size, ObjectSpace.allocated_objects
      self.depth -= 1
      stats.pop if stats.last.first == file
      stats << [file, depth, elapsed, heap_after - heap_before, objects_after - objects_before] if result
      result
    end
Register or log in to add new notes.