Chromium Code Reviews| Index: components/scheduler/renderer/throttled_time_domain.cc |
| diff --git a/components/scheduler/renderer/throttled_time_domain.cc b/components/scheduler/renderer/throttled_time_domain.cc |
| index 76a94a2a01a0a17de431057ffa03918254806c73..689d7ab66a7015d0a6ef1800ddf7c86d4d2f61a1 100644 |
| --- a/components/scheduler/renderer/throttled_time_domain.cc |
| +++ b/components/scheduler/renderer/throttled_time_domain.cc |
| @@ -4,28 +4,31 @@ |
| #include "components/scheduler/renderer/throttled_time_domain.h" |
| -#include "base/time/tick_clock.h" |
| - |
| namespace scheduler { |
| ThrottledTimeDomain::ThrottledTimeDomain(TimeDomain::Observer* observer, |
| - base::TickClock* tick_clock) |
| - : VirtualTimeDomain(observer, tick_clock->NowTicks()), |
| - tick_clock_(tick_clock) {} |
| + const char* tracing_category) |
| + : RealTimeDomain(observer, tracing_category) {} |
| ThrottledTimeDomain::~ThrottledTimeDomain() {} |
| -base::TimeTicks ThrottledTimeDomain::ComputeDelayedRunTime( |
| - base::TimeTicks, |
| - base::TimeDelta delay) const { |
| - // We ignore the |time_domain_now| parameter since its the virtual time but we |
| - // need to use the current real time when computing the delayed runtime. If |
| - // don't do that, throttled timers may fire sooner than expected. |
| - return tick_clock_->NowTicks() + delay; |
| -} |
| - |
| const char* ThrottledTimeDomain::GetName() const { |
| return "ThrottledTimeDomain"; |
| } |
| +void ThrottledTimeDomain::RequestWakeup(base::TimeTicks now, |
| + base::TimeDelta delay) {} |
|
rmcilroy
2016/07/18 15:22:57
Comment on why nothing is done here.
alex clarke (OOO till 29th)
2016/07/18 15:35:52
Good point, thanks!
|
| + |
| +bool ThrottledTimeDomain::MaybeAdvanceTime() { |
| + base::TimeTicks next_run_time; |
| + if (!NextScheduledRunTime(&next_run_time)) |
| + return false; |
| + |
| + base::TimeTicks now = Now(); |
| + if (now >= next_run_time) |
| + return true; // Causes DoWork to post a continuation. |
| + |
| + return false; |
| +} |
| + |
| } // namespace scheduler |