diff options
Diffstat (limited to 'base/message_loop.h')
-rw-r--r-- | base/message_loop.h | 31 |
1 files changed, 17 insertions, 14 deletions
diff --git a/base/message_loop.h b/base/message_loop.h index 732de03..aa7449f 100644 --- a/base/message_loop.h +++ b/base/message_loop.h @@ -44,11 +44,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. @@ -377,6 +375,22 @@ class BASE_EXPORT MessageLoop : public base::MessagePump::Delegate { } #endif // OS_WIN + // This structure is copied around by value. + struct TrackingInfo { + TrackingInfo(const tracked_objects::Location& posted_from, + base::TimeTicks delayed_run_time); + ~TrackingInfo(); + + // Counter for location where the Closure was posted from. + tracked_objects::Births* birth_tally; + + // Time this PendingTask was posted. + base::TimeTicks time_posted; + + // The time when the task should be run. + base::TimeTicks delayed_run_time; + }; + //---------------------------------------------------------------------------- protected: struct RunState { @@ -410,7 +424,7 @@ class BASE_EXPORT MessageLoop : public base::MessagePump::Delegate { #endif // This structure is copied around by value. - struct PendingTask { + struct PendingTask : public TrackingInfo { PendingTask(const base::Closure& task, const tracked_objects::Location& posted_from, base::TimeTicks delayed_run_time, @@ -423,17 +437,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; |