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

Side by Side Diff: content/renderer/scheduler/webthread_impl_for_renderer_scheduler.cc

Issue 1088053003: Patch 1/3 to get WebScheduler via WebThread (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix compile 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 unified diff | Download patch
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "content/renderer/scheduler/webthread_impl_for_renderer_scheduler.h" 5 #include "content/renderer/scheduler/webthread_impl_for_renderer_scheduler.h"
6 6
7 #include "content/renderer/scheduler/renderer_scheduler.h" 7 #include "content/renderer/scheduler/renderer_scheduler.h"
8 #include "content/renderer/scheduler/renderer_web_scheduler_impl.h"
8 #include "third_party/WebKit/public/platform/WebTraceLocation.h" 9 #include "third_party/WebKit/public/platform/WebTraceLocation.h"
9 10
10 namespace content { 11 namespace content {
11 12
12 WebThreadImplForRendererScheduler::WebThreadImplForRendererScheduler( 13 WebThreadImplForRendererScheduler::WebThreadImplForRendererScheduler(
13 RendererScheduler* scheduler) 14 RendererScheduler* scheduler)
14 : task_runner_(scheduler->DefaultTaskRunner()), 15 : web_scheduler_(new RendererWebSchedulerImpl(scheduler)),
16 task_runner_(scheduler->DefaultTaskRunner()),
15 idle_task_runner_(scheduler->IdleTaskRunner()), 17 idle_task_runner_(scheduler->IdleTaskRunner()),
16 scheduler_(scheduler), 18 scheduler_(scheduler),
17 thread_id_(base::PlatformThread::CurrentId()) { 19 thread_id_(base::PlatformThread::CurrentId()) {
18 } 20 }
19 21
20 WebThreadImplForRendererScheduler::~WebThreadImplForRendererScheduler() { 22 WebThreadImplForRendererScheduler::~WebThreadImplForRendererScheduler() {
21 } 23 }
22 24
23 blink::PlatformThreadId WebThreadImplForRendererScheduler::threadId() const { 25 blink::PlatformThreadId WebThreadImplForRendererScheduler::threadId() const {
24 return thread_id_; 26 return thread_id_;
25 } 27 }
26 28
29 blink::WebScheduler* WebThreadImplForRendererScheduler::scheduler() const {
30 return web_scheduler_.get();
31 }
32
27 base::MessageLoop* WebThreadImplForRendererScheduler::MessageLoop() const { 33 base::MessageLoop* WebThreadImplForRendererScheduler::MessageLoop() const {
28 DCHECK(isCurrentThread()); 34 DCHECK(isCurrentThread());
29 return base::MessageLoop::current(); 35 return base::MessageLoop::current();
30 } 36 }
31 37
32 base::SingleThreadTaskRunner* WebThreadImplForRendererScheduler::TaskRunner() 38 base::SingleThreadTaskRunner* WebThreadImplForRendererScheduler::TaskRunner()
33 const { 39 const {
34 return task_runner_.get(); 40 return task_runner_.get();
35 } 41 }
36 42
37 SingleThreadIdleTaskRunner* WebThreadImplForRendererScheduler::IdleTaskRunner() 43 SingleThreadIdleTaskRunner* WebThreadImplForRendererScheduler::IdleTaskRunner()
38 const { 44 const {
39 return idle_task_runner_.get(); 45 return idle_task_runner_.get();
40 } 46 }
41 47
42 void WebThreadImplForRendererScheduler::AddTaskObserverInternal( 48 void WebThreadImplForRendererScheduler::AddTaskObserverInternal(
43 base::MessageLoop::TaskObserver* observer) { 49 base::MessageLoop::TaskObserver* observer) {
44 scheduler_->AddTaskObserver(observer); 50 scheduler_->AddTaskObserver(observer);
45 } 51 }
46 52
47 void WebThreadImplForRendererScheduler::RemoveTaskObserverInternal( 53 void WebThreadImplForRendererScheduler::RemoveTaskObserverInternal(
48 base::MessageLoop::TaskObserver* observer) { 54 base::MessageLoop::TaskObserver* observer) {
49 scheduler_->RemoveTaskObserver(observer); 55 scheduler_->RemoveTaskObserver(observer);
50 } 56 }
51 57
52 } // namespace content 58 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698