Index: cc/scheduler/delay_based_time_source.cc |
diff --git a/cc/scheduler/delay_based_time_source.cc b/cc/scheduler/delay_based_time_source.cc |
index 7966668d3f09705ece89ac741684ccef84f4b08f..5d2f20bee6fd41695b9bcf84d85bd2ca50138163 100644 |
--- a/cc/scheduler/delay_based_time_source.cc |
+++ b/cc/scheduler/delay_based_time_source.cc |
@@ -9,8 +9,7 @@ |
#include "base/debug/trace_event.h" |
#include "base/logging.h" |
-#include "base/message_loop.h" |
-#include "cc/base/thread.h" |
+#include "base/single_thread_task_runner.h" |
namespace cc { |
@@ -34,18 +33,18 @@ static const double kPhaseChangeThreshold = 0.25; |
scoped_refptr<DelayBasedTimeSource> DelayBasedTimeSource::Create( |
base::TimeDelta interval, |
- Thread* thread) { |
- return make_scoped_refptr(new DelayBasedTimeSource(interval, thread)); |
+ base::SingleThreadTaskRunner* task_runner) { |
+ return make_scoped_refptr(new DelayBasedTimeSource(interval, task_runner)); |
} |
-DelayBasedTimeSource::DelayBasedTimeSource(base::TimeDelta interval, |
- Thread* thread) |
+DelayBasedTimeSource::DelayBasedTimeSource( |
+ base::TimeDelta interval, base::SingleThreadTaskRunner* task_runner) |
: client_(NULL), |
has_tick_target_(false), |
current_parameters_(interval, base::TimeTicks()), |
next_parameters_(interval, base::TimeTicks()), |
state_(STATE_INACTIVE), |
- thread_(thread), |
+ task_runner_(task_runner), |
weak_factory_(this) {} |
DelayBasedTimeSource::~DelayBasedTimeSource() {} |
@@ -66,8 +65,9 @@ void DelayBasedTimeSource::SetActive(bool active) { |
// When it runs, we use that to establish the timebase, become truly |
// active, and fire the first tick. |
state_ = STATE_STARTING; |
- thread_->PostTask(base::Bind(&DelayBasedTimeSource::OnTimerFired, |
- weak_factory_.GetWeakPtr())); |
+ task_runner_->PostTask(FROM_HERE, |
+ base::Bind(&DelayBasedTimeSource::OnTimerFired, |
+ weak_factory_.GetWeakPtr())); |
return; |
} |
@@ -238,9 +238,10 @@ void DelayBasedTimeSource::PostNextTickTask(base::TimeTicks now) { |
DCHECK(delay.InMillisecondsF() <= |
next_parameters_.interval.InMillisecondsF() * |
(1.0 + kDoubleTickThreshold)); |
- thread_->PostDelayedTask(base::Bind(&DelayBasedTimeSource::OnTimerFired, |
- weak_factory_.GetWeakPtr()), |
- delay); |
+ task_runner_->PostDelayedTask(FROM_HERE, |
+ base::Bind(&DelayBasedTimeSource::OnTimerFired, |
+ weak_factory_.GetWeakPtr()), |
+ delay); |
next_parameters_.tick_target = new_tick_target; |
current_parameters_ = next_parameters_; |