Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(759)

Side by Side Diff: base/tracked_objects.h

Issue 723343002: Update from https://crrev.com/304121 (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Created 6 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « base/time/time.h ('k') | base/tracked_objects.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef BASE_TRACKED_OBJECTS_H_ 5 #ifndef BASE_TRACKED_OBJECTS_H_
6 #define BASE_TRACKED_OBJECTS_H_ 6 #define BASE_TRACKED_OBJECTS_H_
7 7
8 #include <map> 8 #include <map>
9 #include <set> 9 #include <set>
10 #include <stack> 10 #include <stack>
(...skipping 255 matching lines...) Expand 10 before | Expand all | Expand 10 after
266 266
267 // When deaths have not yet taken place, and we gather data from all the 267 // When deaths have not yet taken place, and we gather data from all the
268 // threads, we create DeathData stats that tally the number of births without 268 // threads, we create DeathData stats that tally the number of births without
269 // a corresponding death. 269 // a corresponding death.
270 explicit DeathData(int count); 270 explicit DeathData(int count);
271 271
272 // Update stats for a task destruction (death) that had a Run() time of 272 // Update stats for a task destruction (death) that had a Run() time of
273 // |duration|, and has had a queueing delay of |queue_duration|. 273 // |duration|, and has had a queueing delay of |queue_duration|.
274 void RecordDeath(const int32 queue_duration, 274 void RecordDeath(const int32 queue_duration,
275 const int32 run_duration, 275 const int32 run_duration,
276 int random_number); 276 const uint32 random_number);
277 277
278 // Metrics accessors, used only for serialization and in tests. 278 // Metrics accessors, used only for serialization and in tests.
279 int count() const; 279 int count() const;
280 int32 run_duration_sum() const; 280 int32 run_duration_sum() const;
281 int32 run_duration_max() const; 281 int32 run_duration_max() const;
282 int32 run_duration_sample() const; 282 int32 run_duration_sample() const;
283 int32 queue_duration_sum() const; 283 int32 queue_duration_sum() const;
284 int32 queue_duration_max() const; 284 int32 queue_duration_max() const;
285 int32 queue_duration_sample() const; 285 int32 queue_duration_sample() const;
286 286
(...skipping 391 matching lines...) Expand 10 before | Expand all | Expand 10 after
678 // loop, then the stack can grow larger. Note that we don't try to deduct 678 // loop, then the stack can grow larger. Note that we don't try to deduct
679 // time in nested porfiles, as our current timer is based on wall-clock time, 679 // time in nested porfiles, as our current timer is based on wall-clock time,
680 // and not CPU time (and we're hopeful that nested timing won't be a 680 // and not CPU time (and we're hopeful that nested timing won't be a
681 // significant additional cost). 681 // significant additional cost).
682 ParentStack parent_stack_; 682 ParentStack parent_stack_;
683 683
684 // A random number that we used to select decide which sample to keep as a 684 // A random number that we used to select decide which sample to keep as a
685 // representative sample in each DeathData instance. We can't start off with 685 // representative sample in each DeathData instance. We can't start off with
686 // much randomness (because we can't call RandInt() on all our threads), so 686 // much randomness (because we can't call RandInt() on all our threads), so
687 // we stir in more and more as we go. 687 // we stir in more and more as we go.
688 int32 random_number_; 688 uint32 random_number_;
689 689
690 // Record of what the incarnation_counter_ was when this instance was created. 690 // Record of what the incarnation_counter_ was when this instance was created.
691 // If the incarnation_counter_ has changed, then we avoid pushing into the 691 // If the incarnation_counter_ has changed, then we avoid pushing into the
692 // pool (this is only critical in tests which go through multiple 692 // pool (this is only critical in tests which go through multiple
693 // incarnations). 693 // incarnations).
694 int incarnation_count_for_pool_; 694 int incarnation_count_for_pool_;
695 695
696 // Most recently started (i.e. most nested) stopwatch on the current thread, 696 // Most recently started (i.e. most nested) stopwatch on the current thread,
697 // if it exists; NULL otherwise. 697 // if it exists; NULL otherwise.
698 TaskStopwatch* current_stopwatch_; 698 TaskStopwatch* current_stopwatch_;
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after
784 ~ProcessDataSnapshot(); 784 ~ProcessDataSnapshot();
785 785
786 std::vector<TaskSnapshot> tasks; 786 std::vector<TaskSnapshot> tasks;
787 std::vector<ParentChildPairSnapshot> descendants; 787 std::vector<ParentChildPairSnapshot> descendants;
788 int process_id; 788 int process_id;
789 }; 789 };
790 790
791 } // namespace tracked_objects 791 } // namespace tracked_objects
792 792
793 #endif // BASE_TRACKED_OBJECTS_H_ 793 #endif // BASE_TRACKED_OBJECTS_H_
OLDNEW
« no previous file with comments | « base/time/time.h ('k') | base/tracked_objects.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698