summaryrefslogtreecommitdiffstats
path: root/base/message_loop.h
diff options
context:
space:
mode:
authorjar@chromium.org <jar@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-10-31 22:36:21 +0000
committerjar@chromium.org <jar@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-10-31 22:36:21 +0000
commitb2a9bbd42c6d5215c43067582fa2bca3cfc5e20e (patch)
tree3a19dea8153c354505ede0d67f4dd20fb03c4326 /base/message_loop.h
parentdaf82f8e54e875ad6e97aef6952ef181de65caeb (diff)
downloadchromium_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.h16
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;