# File lib/new_relic/agent/threading/backtrace_node.rb, line 51 def aggregate(backtrace) current = self depth = 0 backtrace.reverse_each do |frame| break if depth >= MAX_THREAD_PROFILE_DEPTH existing_node = current.find_child(frame) if existing_node node = existing_node else node = Threading::BacktraceNode.new(frame) current.add_child(node) @flattened << node end node.runnable_count += 1 current = node depth += 1 end end