Index: components/scheduler/child/compositor_worker_scheduler.cc |
diff --git a/components/scheduler/child/compositor_worker_scheduler.cc b/components/scheduler/child/compositor_worker_scheduler.cc |
deleted file mode 100644 |
index fb2f569dbc2a6e21fcc8d954c73ca4995c23246e..0000000000000000000000000000000000000000 |
--- a/components/scheduler/child/compositor_worker_scheduler.cc |
+++ /dev/null |
@@ -1,166 +0,0 @@ |
-// Copyright 2016 The Chromium Authors. All rights reserved. |
-// Use of this source code is governed by a BSD-style license that can be |
-// found in the LICENSE file. |
- |
-#include "components/scheduler/child/compositor_worker_scheduler.h" |
- |
-#include "base/message_loop/message_loop.h" |
-#include "base/threading/thread.h" |
- |
-namespace scheduler { |
- |
-// TODO(scheduler-dev): Get rid of this asap! |
-namespace { |
-class CompositorWorkerTaskRunnerWrapper : public TaskQueue { |
- public: |
- explicit CompositorWorkerTaskRunnerWrapper( |
- scoped_refptr<base::SingleThreadTaskRunner> task_runner) |
- : task_runner_(task_runner) {} |
- |
- // TaskQueue implementation: |
- void UnregisterTaskQueue() override { NOTREACHED(); } |
- |
- bool RunsTasksOnCurrentThread() const override { |
- return task_runner_->RunsTasksOnCurrentThread(); |
- } |
- |
- bool PostDelayedTask(const tracked_objects::Location& from_here, |
- const base::Closure& task, |
- base::TimeDelta delay) override { |
- return task_runner_->PostDelayedTask(from_here, task, delay); |
- } |
- |
- bool PostNonNestableDelayedTask(const tracked_objects::Location& from_here, |
- const base::Closure& task, |
- base::TimeDelta delay) override { |
- return task_runner_->PostNonNestableDelayedTask(from_here, task, delay); |
- } |
- |
- void SetQueueEnabled(bool enabled) override { NOTREACHED(); } |
- |
- bool IsQueueEnabled() const override { |
- NOTREACHED(); |
- return true; |
- } |
- |
- bool IsEmpty() const override { |
- NOTREACHED(); |
- return false; |
- }; |
- |
- bool HasPendingImmediateWork() const override { |
- NOTREACHED(); |
- return false; |
- }; |
- |
- bool NeedsPumping() const override { |
- NOTREACHED(); |
- return false; |
- }; |
- |
- const char* GetName() const override { |
- NOTREACHED(); |
- return nullptr; |
- }; |
- |
- void SetQueuePriority(QueuePriority priority) override { NOTREACHED(); } |
- |
- QueuePriority GetQueuePriority() const override { |
- NOTREACHED(); |
- return QueuePriority::NORMAL_PRIORITY; |
- }; |
- |
- void SetPumpPolicy(PumpPolicy pump_policy) override { NOTREACHED(); } |
- |
- PumpPolicy GetPumpPolicy() const override { |
- NOTREACHED(); |
- return PumpPolicy::AUTO; |
- }; |
- |
- void PumpQueue(LazyNow*, bool may_post_dowork) override { NOTREACHED(); } |
- |
- void AddTaskObserver( |
- base::MessageLoop::TaskObserver* task_observer) override { |
- NOTREACHED(); |
- } |
- |
- void RemoveTaskObserver( |
- base::MessageLoop::TaskObserver* task_observer) override { |
- NOTREACHED(); |
- } |
- |
- void SetTimeDomain(TimeDomain* domain) override { NOTREACHED(); } |
- |
- TimeDomain* GetTimeDomain() const override { |
- NOTREACHED(); |
- return nullptr; |
- } |
- |
- void SetBlameContext(base::trace_event::BlameContext*) override { |
- NOTREACHED(); |
- } |
- |
- private: |
- ~CompositorWorkerTaskRunnerWrapper() override {} |
- |
- scoped_refptr<base::SingleThreadTaskRunner> task_runner_; |
-}; |
-} // namespace |
- |
-CompositorWorkerScheduler::CompositorWorkerScheduler(base::Thread* thread) |
- : thread_(thread) {} |
- |
-CompositorWorkerScheduler::~CompositorWorkerScheduler() {} |
- |
-void CompositorWorkerScheduler::Init() {} |
- |
-scoped_refptr<TaskQueue> CompositorWorkerScheduler::DefaultTaskRunner() { |
- // TODO(sad): Implement a more robust scheduler that can do idle tasks for GC |
- // without regressing performance of the rest of the system. |
- return make_scoped_refptr( |
- new CompositorWorkerTaskRunnerWrapper(thread_->task_runner())); |
-} |
- |
-scoped_refptr<scheduler::SingleThreadIdleTaskRunner> |
-CompositorWorkerScheduler::IdleTaskRunner() { |
- // TODO(flackr): This posts idle tasks as regular tasks. We need to create |
- // an idle task runner with the semantics we want for the compositor thread |
- // which runs them after the current frame has been drawn before the next |
- // vsync. https://crbug.com/609532 |
- return make_scoped_refptr(new SingleThreadIdleTaskRunner( |
- thread_->task_runner(), thread_->task_runner(), this, |
- "compositor.scheduler")); |
-} |
- |
-bool CompositorWorkerScheduler::CanExceedIdleDeadlineIfRequired() const { |
- return false; |
-} |
- |
-bool CompositorWorkerScheduler::ShouldYieldForHighPriorityWork() { |
- return false; |
-} |
- |
-void CompositorWorkerScheduler::AddTaskObserver( |
- base::MessageLoop::TaskObserver* task_observer) { |
- thread_->message_loop()->AddTaskObserver(task_observer); |
-} |
- |
-void CompositorWorkerScheduler::RemoveTaskObserver( |
- base::MessageLoop::TaskObserver* task_observer) { |
- thread_->message_loop()->RemoveTaskObserver(task_observer); |
-} |
- |
-void CompositorWorkerScheduler::Shutdown() {} |
- |
-void CompositorWorkerScheduler::OnIdleTaskPosted() {} |
- |
-base::TimeTicks CompositorWorkerScheduler::WillProcessIdleTask() { |
- // TODO(flackr): Return the next frame time as the deadline instead. |
- // TODO(flackr): Ensure that oilpan GC does happen on the compositor thread |
- // even though we will have no long idle periods. https://crbug.com/609531 |
- return base::TimeTicks::Now() + base::TimeDelta::FromMillisecondsD(16.7); |
-} |
- |
-void CompositorWorkerScheduler::DidProcessIdleTask() {} |
- |
-} // namespace scheduler |