| 787 | } |
| 788 | |
| 789 | void StackTraceSnapshot::VisitGroups(const StackTraceSnapshot::VisitorFunc& visitor) { |
| 790 | auto group_start = infos_.begin(); |
| 791 | auto group_end = group_start; |
| 792 | while (group_end != infos_.end()) { |
| 793 | do { |
| 794 | ++group_end; |
| 795 | } while (group_end != infos_.end() && group_end->stack.Equals(group_start->stack)); |
| 796 | visitor(ArrayView<ThreadInfo>(&*group_start, std::distance(group_start, group_end))); |
| 797 | group_start = group_end; |
| 798 | } |
| 799 | } |
| 800 | |
| 801 | } // namespace kudu |