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

Unified Diff: content/renderer/scheduler/webthread_impl_for_renderer_scheduler.cc

Issue 1033643004: Add a WorkerScheduler and a WebThreadImplForWorker (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix bug where tasks posted to a worker thread did not always run when the thread was shutdown Created 5 years, 8 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: content/renderer/scheduler/webthread_impl_for_renderer_scheduler.cc
diff --git a/content/renderer/scheduler/webthread_impl_for_scheduler.cc b/content/renderer/scheduler/webthread_impl_for_renderer_scheduler.cc
similarity index 51%
rename from content/renderer/scheduler/webthread_impl_for_scheduler.cc
rename to content/renderer/scheduler/webthread_impl_for_renderer_scheduler.cc
index b328142846ada43cee212c0b59c25fb2845acbd9..4855df19ef6aded31831d96e12f621a8113b92c6 100644
--- a/content/renderer/scheduler/webthread_impl_for_scheduler.cc
+++ b/content/renderer/scheduler/webthread_impl_for_renderer_scheduler.cc
@@ -2,42 +2,49 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#include "content/renderer/scheduler/webthread_impl_for_scheduler.h"
+#include "content/renderer/scheduler/webthread_impl_for_renderer_scheduler.h"
#include "content/renderer/scheduler/renderer_scheduler.h"
#include "third_party/WebKit/public/platform/WebTraceLocation.h"
namespace content {
-WebThreadImplForScheduler::WebThreadImplForScheduler(
+WebThreadImplForRendererScheduler::WebThreadImplForRendererScheduler(
RendererScheduler* scheduler)
: task_runner_(scheduler->DefaultTaskRunner()),
+ idle_task_runner_(scheduler->IdleTaskRunner()),
scheduler_(scheduler),
thread_id_(base::PlatformThread::CurrentId()) {
}
-WebThreadImplForScheduler::~WebThreadImplForScheduler() {
+WebThreadImplForRendererScheduler::~WebThreadImplForRendererScheduler() {
}
-blink::PlatformThreadId WebThreadImplForScheduler::threadId() const {
+blink::PlatformThreadId WebThreadImplForRendererScheduler::threadId() const {
return thread_id_;
}
-base::MessageLoop* WebThreadImplForScheduler::MessageLoop() const {
+base::MessageLoop* WebThreadImplForRendererScheduler::MessageLoop() const {
DCHECK(isCurrentThread());
return base::MessageLoop::current();
}
-base::SingleThreadTaskRunner* WebThreadImplForScheduler::TaskRunner() const {
+base::SingleThreadTaskRunner* WebThreadImplForRendererScheduler::TaskRunner()
+ const {
return task_runner_.get();
}
-void WebThreadImplForScheduler::AddTaskObserverInternal(
+SingleThreadIdleTaskRunner* WebThreadImplForRendererScheduler::IdleTaskRunner()
+ const {
+ return idle_task_runner_.get();
+}
+
+void WebThreadImplForRendererScheduler::AddTaskObserverInternal(
base::MessageLoop::TaskObserver* observer) {
scheduler_->AddTaskObserver(observer);
}
-void WebThreadImplForScheduler::RemoveTaskObserverInternal(
+void WebThreadImplForRendererScheduler::RemoveTaskObserverInternal(
base::MessageLoop::TaskObserver* observer) {
scheduler_->RemoveTaskObserver(observer);
}

Powered by Google App Engine
This is Rietveld 408576698