diff options
author | jar@chromium.org <jar@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-10-31 22:36:21 +0000 |
---|---|---|
committer | jar@chromium.org <jar@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-10-31 22:36:21 +0000 |
commit | b2a9bbd42c6d5215c43067582fa2bca3cfc5e20e (patch) | |
tree | 3a19dea8153c354505ede0d67f4dd20fb03c4326 /base/message_loop.h | |
parent | daf82f8e54e875ad6e97aef6952ef181de65caeb (diff) | |
download | chromium_src-b2a9bbd42c6d5215c43067582fa2bca3cfc5e20e.zip chromium_src-b2a9bbd42c6d5215c43067582fa2bca3cfc5e20e.tar.gz chromium_src-b2a9bbd42c6d5215c43067582fa2bca3cfc5e20e.tar.bz2 |
Enable tracking of objects by default
This is a reland of accumulated patches including CLs
8414036, 8425010, 8425013, 8424013.
It fully enables tracking of objects, as seen in about:tracking
in teh release build.
The problem this had in its initaial landing centered on
Mac instability in base_unittest. We were encountering crash
on exit of the tests, with a stack dump involving pthreads.
r=rtenneti
BUG=101856
Review URL: http://codereview.chromium.org/8429009
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@108026 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'base/message_loop.h')
-rw-r--r-- | base/message_loop.h | 16 |
1 files changed, 2 insertions, 14 deletions
diff --git a/base/message_loop.h b/base/message_loop.h index 732de03..d94dc2f 100644 --- a/base/message_loop.h +++ b/base/message_loop.h @@ -19,6 +19,7 @@ #include "base/observer_list.h" #include "base/synchronization/lock.h" #include "base/task.h" +#include "base/tracking_info.h" #include "base/time.h" #if defined(OS_WIN) @@ -44,11 +45,9 @@ namespace base { class Histogram; } -#if defined(TRACK_ALL_TASK_OBJECTS) namespace tracked_objects { class Births; } -#endif // defined(TRACK_ALL_TASK_OBJECTS) // A MessageLoop is used to process events for a particular thread. There is // at most one MessageLoop instance per thread. @@ -410,7 +409,7 @@ class BASE_EXPORT MessageLoop : public base::MessagePump::Delegate { #endif // This structure is copied around by value. - struct PendingTask { + struct PendingTask : public base::TrackingInfo { PendingTask(const base::Closure& task, const tracked_objects::Location& posted_from, base::TimeTicks delayed_run_time, @@ -423,17 +422,6 @@ class BASE_EXPORT MessageLoop : public base::MessagePump::Delegate { // The task to run. base::Closure task; -#if defined(TRACK_ALL_TASK_OBJECTS) - // Counter for location where the Closure was posted from. - tracked_objects::Births* post_births; -#endif // defined(TRACK_ALL_TASK_OBJECTS) - - // Time this PendingTask was posted. - base::TimeTicks time_posted; - - // The time when the task should be run. - base::TimeTicks delayed_run_time; - // The site this PendingTask was posted from. tracked_objects::Location posted_from; |