summaryrefslogtreecommitdiffstats
path: root/content/renderer/scheduler
diff options
context:
space:
mode:
authoralexclarke <alexclarke@chromium.org>2015-03-26 12:22:27 -0700
committerCommit bot <commit-bot@chromium.org>2015-03-26 19:23:28 +0000
commit2e2647b9a70d35ced01dbf3a35ea2647bebbf025 (patch)
treee01bb0db0d5cce4aa93975b246b2cb143337dc98 /content/renderer/scheduler
parentff84d8d30f0d6ef4afc03ca22eda045c00bb033f (diff)
downloadchromium_src-2e2647b9a70d35ced01dbf3a35ea2647bebbf025.zip
chromium_src-2e2647b9a70d35ced01dbf3a35ea2647bebbf025.tar.gz
chromium_src-2e2647b9a70d35ced01dbf3a35ea2647bebbf025.tar.bz2
Move IdleTask to WebThread side 2/3
Second step of a a three sided patch to move IdleTask to WebThread. This is needed because we plan to introduce a scheduler for worker threads, and they will use the WebTherad interface for posting idle tasks. Other patches https://codereview.chromium.org/1031843002/ and https://codereview.chromium.org/1029803002 BUG=463143 Review URL: https://codereview.chromium.org/1029343002 Cr-Commit-Position: refs/heads/master@{#322443}
Diffstat (limited to 'content/renderer/scheduler')
-rw-r--r--content/renderer/scheduler/web_scheduler_impl.cc17
-rw-r--r--content/renderer/scheduler/web_scheduler_impl.h8
2 files changed, 12 insertions, 13 deletions
diff --git a/content/renderer/scheduler/web_scheduler_impl.cc b/content/renderer/scheduler/web_scheduler_impl.cc
index efab3e2..53122bc 100644
--- a/content/renderer/scheduler/web_scheduler_impl.cc
+++ b/content/renderer/scheduler/web_scheduler_impl.cc
@@ -29,9 +29,8 @@ bool WebSchedulerImpl::canExceedIdleDeadlineIfRequired() {
return renderer_scheduler_->CanExceedIdleDeadlineIfRequired();
}
-void WebSchedulerImpl::runIdleTask(
- scoped_ptr<blink::WebScheduler::IdleTask> task,
- base::TimeTicks deadline) {
+void WebSchedulerImpl::runIdleTask(scoped_ptr<blink::WebThread::IdleTask> task,
+ base::TimeTicks deadline) {
task->run((deadline - base::TimeTicks()).InSecondsF());
}
@@ -40,9 +39,9 @@ void WebSchedulerImpl::runTask(scoped_ptr<blink::WebThread::Task> task) {
}
void WebSchedulerImpl::postIdleTask(const blink::WebTraceLocation& web_location,
- blink::WebScheduler::IdleTask* task) {
+ blink::WebThread::IdleTask* task) {
DCHECK(idle_task_runner_);
- scoped_ptr<blink::WebScheduler::IdleTask> scoped_task(task);
+ scoped_ptr<blink::WebThread::IdleTask> scoped_task(task);
tracked_objects::Location location(web_location.functionName(),
web_location.fileName(), -1, nullptr);
idle_task_runner_->PostIdleTask(
@@ -52,9 +51,9 @@ void WebSchedulerImpl::postIdleTask(const blink::WebTraceLocation& web_location,
void WebSchedulerImpl::postNonNestableIdleTask(
const blink::WebTraceLocation& web_location,
- blink::WebScheduler::IdleTask* task) {
+ blink::WebThread::IdleTask* task) {
DCHECK(idle_task_runner_);
- scoped_ptr<blink::WebScheduler::IdleTask> scoped_task(task);
+ scoped_ptr<blink::WebThread::IdleTask> scoped_task(task);
tracked_objects::Location location(web_location.functionName(),
web_location.fileName(), -1, nullptr);
idle_task_runner_->PostNonNestableIdleTask(
@@ -64,9 +63,9 @@ void WebSchedulerImpl::postNonNestableIdleTask(
void WebSchedulerImpl::postIdleTaskAfterWakeup(
const blink::WebTraceLocation& web_location,
- blink::WebScheduler::IdleTask* task) {
+ blink::WebThread::IdleTask* task) {
DCHECK(idle_task_runner_);
- scoped_ptr<blink::WebScheduler::IdleTask> scoped_task(task);
+ scoped_ptr<blink::WebThread::IdleTask> scoped_task(task);
tracked_objects::Location location(web_location.functionName(),
web_location.fileName(), -1, nullptr);
idle_task_runner_->PostIdleTaskAfterWakeup(
diff --git a/content/renderer/scheduler/web_scheduler_impl.h b/content/renderer/scheduler/web_scheduler_impl.h
index b0b60b7..c74430e 100644
--- a/content/renderer/scheduler/web_scheduler_impl.h
+++ b/content/renderer/scheduler/web_scheduler_impl.h
@@ -29,11 +29,11 @@ class CONTENT_EXPORT WebSchedulerImpl : public blink::WebScheduler {
virtual bool shouldYieldForHighPriorityWork();
virtual bool canExceedIdleDeadlineIfRequired();
virtual void postIdleTask(const blink::WebTraceLocation& location,
- blink::WebScheduler::IdleTask* task);
+ blink::WebThread::IdleTask* task);
virtual void postNonNestableIdleTask(const blink::WebTraceLocation& location,
- blink::WebScheduler::IdleTask* task);
+ blink::WebThread::IdleTask* task);
virtual void postIdleTaskAfterWakeup(const blink::WebTraceLocation& location,
- blink::WebScheduler::IdleTask* task);
+ blink::WebThread::IdleTask* task);
virtual void postLoadingTask(const blink::WebTraceLocation& location,
blink::WebThread::Task* task);
virtual void postTimerTask(const blink::WebTraceLocation& location,
@@ -41,7 +41,7 @@ class CONTENT_EXPORT WebSchedulerImpl : public blink::WebScheduler {
long long delayMs);
private:
- static void runIdleTask(scoped_ptr<blink::WebScheduler::IdleTask> task,
+ static void runIdleTask(scoped_ptr<blink::WebThread::IdleTask> task,
base::TimeTicks deadline);
static void runTask(scoped_ptr<blink::WebThread::Task> task);