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 |
index 38a8a4a5129a03c043863e94f4ed5d657c4f0bae..c6e753d1e239b22abbb059d35ea19b781430c076 100644 |
--- a/components/scheduler/child/compositor_worker_scheduler.cc |
+++ b/components/scheduler/child/compositor_worker_scheduler.cc |
@@ -123,9 +123,9 @@ scoped_refptr<TaskQueue> CompositorWorkerScheduler::DefaultTaskRunner() { |
scoped_refptr<scheduler::SingleThreadIdleTaskRunner> |
CompositorWorkerScheduler::IdleTaskRunner() { |
- // TODO(sad): Not having a task-runner for idle tasks means v8 has to fallback |
- // to inline GC, which might cause jank. |
- return nullptr; |
+ return make_scoped_refptr(new SingleThreadIdleTaskRunner( |
+ thread_->task_runner(), thread_->task_runner(), this, |
Sami
2016/05/05 14:56:08
This is posting idle tasks as regular tasks which
flackr
2016/05/05 15:13:15
See comment below, this is just an interim workaro
Ian Vollick
2016/05/05 16:09:18
Yep, making idle tasks have the same priority as r
Sami
2016/05/05 16:53:39
A big fat TODO is probably fine as long as this is
Sami
2016/05/05 16:53:39
That's fine -- idle work is designed to be indefin
flackr
2016/05/05 18:36:00
Added a big fat TODO.
|
+ "compositor.scheduler")); |
} |
bool CompositorWorkerScheduler::CanExceedIdleDeadlineIfRequired() const { |
@@ -148,4 +148,13 @@ void CompositorWorkerScheduler::RemoveTaskObserver( |
void CompositorWorkerScheduler::Shutdown() {} |
+void CompositorWorkerScheduler::OnIdleTaskPosted() {} |
+ |
+base::TimeTicks CompositorWorkerScheduler::WillProcessIdleTask() { |
+ // TODO(flackr): Return the next frame time as the deadline instead. |
+ return base::TimeTicks::Now() + base::TimeDelta::FromMillisecondsD(16.7); |
Sami
2016/05/05 14:56:08
This would give all idle tasks 16ms to run, which
flackr
2016/05/05 15:13:15
The idle task runner seems to be necessary in orde
Sami
2016/05/05 16:53:39
One thing rmcilroy@ pointed out was that oilpan do
flackr
2016/05/05 18:36:00
Added a big fat TODO :-)
|
+} |
+ |
+void CompositorWorkerScheduler::DidProcessIdleTask() {} |
+ |
} // namespace scheduler |