diff options
author | willchan@chromium.org <willchan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-06-08 20:53:41 +0000 |
---|---|---|
committer | willchan@chromium.org <willchan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-06-08 20:53:41 +0000 |
commit | e81ed0577b287a1346c06fc5bbd565e429f3059e (patch) | |
tree | 23fabc108bbdea823d45de860ed48f077e2a9436 /base/tracked.h | |
parent | 5849ebff0fb2bd52d9f5667fc7dd15453c11be0a (diff) | |
download | chromium_src-e81ed0577b287a1346c06fc5bbd565e429f3059e.zip chromium_src-e81ed0577b287a1346c06fc5bbd565e429f3059e.tar.gz chromium_src-e81ed0577b287a1346c06fc5bbd565e429f3059e.tar.bz2 |
Jankometer: Generalize the code more. Add better support for monitoring IO thread.
Previously, the Jankometer only monitored windows messages on the UI thread (or gtk events).
I've added observers for tasks and IO events. This lets us monitor all events on UI & IO threads (UI messages, all Tasks, and IO events).
Replaces the JankObserver with a UIJankObserver and an IOJankObserver.
Shares common code in JankObserverHelper. The JankObserverHelper and JankWatchdog are generic enough that they can probably move out to chrome/common and be reused by the renderer.
Review URL: http://codereview.chromium.org/2098020
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49188 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'base/tracked.h')
-rw-r--r-- | base/tracked.h | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/base/tracked.h b/base/tracked.h index b0be729..3622d1c 100644 --- a/base/tracked.h +++ b/base/tracked.h @@ -107,8 +107,14 @@ class Tracked { bool MissingBirthplace() const; +#if defined(TRACK_ALL_TASK_OBJECTS) + base::TimeTicks tracked_birth_time() const { return tracked_birth_time_; } +#else + base::TimeTicks tracked_birth_time() const { return base::TimeTicks::Now(); } +#endif // defined(TRACK_ALL_TASK_OBJECTS) + private: -#ifdef TRACK_ALL_TASK_OBJECTS +#if defined(TRACK_ALL_TASK_OBJECTS) // Pointer to instance were counts of objects with the same birth location // (on the same thread) are stored. @@ -118,7 +124,7 @@ class Tracked { // reset before the object begins it active life. base::TimeTicks tracked_birth_time_; -#endif // TRACK_ALL_TASK_OBJECTS +#endif // defined(TRACK_ALL_TASK_OBJECTS) DISALLOW_COPY_AND_ASSIGN(Tracked); }; |