| Index: base/message_loop/message_loop.h
|
| diff --git a/base/message_loop/message_loop.h b/base/message_loop/message_loop.h
|
| index 330bde6d2e8da68dccf0c1af1fcfaf2a8d081138..f6d99bf5317e1bb23267ab7f819ba28fd55a46a4 100644
|
| --- a/base/message_loop/message_loop.h
|
| +++ b/base/message_loop/message_loop.h
|
| @@ -371,10 +371,6 @@ class BASE_EXPORT MessageLoop : public MessagePump::Delegate {
|
| void AddTaskObserver(TaskObserver* task_observer);
|
| void RemoveTaskObserver(TaskObserver* task_observer);
|
|
|
| - // When we go into high resolution timer mode, we will stay in hi-res mode
|
| - // for at least 1s.
|
| - static const int kHighResolutionTimerModeLeaseTimeMs = 1000;
|
| -
|
| #if defined(OS_WIN)
|
| void set_os_modal_loop(bool os_modal_loop) {
|
| os_modal_loop_ = os_modal_loop;
|
| @@ -390,7 +386,7 @@ class BASE_EXPORT MessageLoop : public MessagePump::Delegate {
|
|
|
| // Returns true if the message loop has high resolution timers enabled.
|
| // Provided for testing.
|
| - bool IsHighResolutionTimerEnabledForTesting();
|
| + bool HasHighResolutionTasks();
|
|
|
| // Returns true if the message loop is "idle". Provided for testing.
|
| bool IsIdleForTesting();
|
| @@ -453,6 +449,7 @@ class BASE_EXPORT MessageLoop : public MessagePump::Delegate {
|
| virtual bool DoWork() OVERRIDE;
|
| virtual bool DoDelayedWork(TimeTicks* next_delayed_work_time) OVERRIDE;
|
| virtual bool DoIdleWork() OVERRIDE;
|
| + virtual void UpdateTimerGranularity() OVERRIDE;
|
|
|
| const Type type_;
|
|
|
| @@ -460,6 +457,11 @@ class BASE_EXPORT MessageLoop : public MessagePump::Delegate {
|
| // this queue is only accessed (push/pop) by our current thread.
|
| TaskQueue work_queue_;
|
|
|
| + // How many high resolution tasks are in the pending task queue. This value
|
| + // increases by N every time we call ReloadWorkQueue() and decreases by 1
|
| + // every time we call RunTask() if the task needs a high resolution timer.
|
| + int pending_high_res_tasks_;
|
| +
|
| // Contains delayed tasks, sorted by their 'delayed_run_time' property.
|
| DelayedTaskQueue delayed_work_queue_;
|
|
|
|
|