Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(380)

Unified Diff: components/scheduler/base/time_domain.h

Issue 2155143002: Fix a bug that could occasionaly cause setInterval to stop (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Changed ThrottledTimeDomain to be based on RealTimeDomain Created 4 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: components/scheduler/base/time_domain.h
diff --git a/components/scheduler/base/time_domain.h b/components/scheduler/base/time_domain.h
index 3b8db03e5c56f729b1042366faa31fa96afc7ba3..e316b117c1a35fe704cdf56c09e82a61af46c20f 100644
--- a/components/scheduler/base/time_domain.h
+++ b/components/scheduler/base/time_domain.h
@@ -50,13 +50,6 @@ class SCHEDULER_EXPORT TimeDomain {
// Evaluate this TimeDomain's Now. Can be called from any thread.
virtual base::TimeTicks Now() const = 0;
- // Computes a runtime which is >= |time_domain_now| + |delay|. This is used to
- // allow the TimeDomain to decide if the real or virtual time should be used
- // when computing the task run time. This can be called from any thread.
- virtual base::TimeTicks ComputeDelayedRunTime(
- base::TimeTicks time_domain_now,
- base::TimeDelta delay) const = 0;
-
// Some TimeDomains support virtual time, this method tells us to advance time
// if possible and return true if time was advanced.
virtual bool MaybeAdvanceTime() = 0;
@@ -68,6 +61,11 @@ class SCHEDULER_EXPORT TimeDomain {
// runtime for the next one and it returns true. Returns false otherwise.
bool NextScheduledRunTime(base::TimeTicks* out_time) const;
+ // Clears expired entries from |delayed_wakeup_multimap_|. Caution needs to be
+ // taken to ensure TaskQueueImpl::UpdateDelayedWorkQueue or
+ // TaskQueueImpl::Pump is called on the affected queues.
+ void ClearExpiredWakeups();
rmcilroy 2016/07/18 15:22:57 Did this need to be moved? I don't see it being us
alex clarke (OOO till 29th) 2016/07/18 15:35:52 I made it public.
rmcilroy 2016/07/18 16:01:42 Right, my point was why did you need to make it Pu
alex clarke (OOO till 29th) 2016/07/18 16:06:38 It's used by ThrottlingHelper::PumpThrottledTasks.
rmcilroy 2016/07/18 16:10:44 Ahh I see. I think it's better now that it's expli
+
protected:
friend class internal::TaskQueueImpl;
friend class TaskQueueManager;
@@ -129,12 +127,6 @@ class SCHEDULER_EXPORT TimeDomain {
bool should_trigger_wakeup,
const internal::TaskQueueImpl::Task* previous_task);
- protected:
- // Clears expired entries from |delayed_wakeup_multimap_|. Caution needs to be
- // taken to ensure TaskQueueImpl::UpdateDelayedWorkQueue or
- // TaskQueueImpl::Pump is called on the affected queues.
- void ClearExpiredWakeups();
-
private:
void MoveNewlyUpdatableQueuesIntoUpdatableQueueSet();

Powered by Google App Engine
This is Rietveld 408576698