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

Unified Diff: third_party/WebKit/Source/platform/scheduler/base/task_queue_impl.h

Issue 2590593002: Revert of [Reland] Scheduler refactoring to virtually eliminate redundant DoWorks (Closed)
Patch Set: Created 4 years 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: third_party/WebKit/Source/platform/scheduler/base/task_queue_impl.h
diff --git a/third_party/WebKit/Source/platform/scheduler/base/task_queue_impl.h b/third_party/WebKit/Source/platform/scheduler/base/task_queue_impl.h
index 814c3eb0b71a8f559498760dbe8fb467d6eaa9d0..55bfa458b03c385b67c74f85e6a725b4a5dd569e 100644
--- a/third_party/WebKit/Source/platform/scheduler/base/task_queue_impl.h
+++ b/third_party/WebKit/Source/platform/scheduler/base/task_queue_impl.h
@@ -139,16 +139,9 @@
const char* GetName() const override;
QueueType GetQueueType() const override;
- // As BlockedByFence but only safe to be called while |any_thread_| is locked.
- // Must only be called from the thread this task queue was created on.
- bool BlockedByFenceLocked() const;
-
- // Must only be called from the thread this task queue was created on.
- void OnImmediateWorkQueueHasBecomeEmpty(
- std::queue<TaskQueueImpl::Task>* work_queue);
-
- // Must only be called from the thread this task queue was created on.
- void ReloadImmediateWorkQueueIfEmpty();
+ // If this returns false then future updates for this queue are not needed
+ // unless requested.
+ bool MaybeUpdateImmediateWorkQueues();
void AsValueInto(base::trace_event::TracedValue* state) const;
@@ -179,9 +172,9 @@
}
// Enqueues any delayed tasks which should be run now on the
- // |delayed_work_queue|. Returns the deadline if a subsequent wakeup is
- // required. Must be called from the main thread.
- base::Optional<base::TimeTicks> WakeUpForDelayedWork(LazyNow* lazy_now);
+ // |delayed_work_queue|. It also schedules the next wake up with the
+ // TimeDomain. Must be called from the main thread.
+ void WakeUpForDelayedWork(LazyNow* lazy_now);
base::TimeTicks scheduled_time_domain_wakeup() const {
return main_thread_only().scheduled_time_domain_wakeup;
@@ -297,6 +290,9 @@
EnqueueOrder sequence_number,
bool nestable);
+ // As BlockedByFence but safe to be called while locked.
+ bool BlockedByFenceLocked() const;
+
void TraceQueueSize(bool is_locked) const;
static void QueueAsValueInto(const std::queue<Task>& queue,
base::trace_event::TracedValue* state);

Powered by Google App Engine
This is Rietveld 408576698