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

Side by Side Diff: third_party/WebKit/Source/platform/scheduler/child/single_thread_idle_task_runner.cc

Issue 2823103003: Introduce TaskRunner::RunsTasksInCurrentSequence() (Closed)
Patch Set: rebase Created 3 years, 7 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 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 "public/platform/scheduler/child/single_thread_idle_task_runner.h" 5 #include "public/platform/scheduler/child/single_thread_idle_task_runner.h"
6 6
7 #include "base/location.h" 7 #include "base/location.h"
8 #include "base/trace_event/blame_context.h" 8 #include "base/trace_event/blame_context.h"
9 #include "base/trace_event/trace_event.h" 9 #include "base/trace_event/trace_event.h"
10 10
11 namespace blink { 11 namespace blink {
12 namespace scheduler { 12 namespace scheduler {
13 13
14 SingleThreadIdleTaskRunner::SingleThreadIdleTaskRunner( 14 SingleThreadIdleTaskRunner::SingleThreadIdleTaskRunner(
15 scoped_refptr<base::SingleThreadTaskRunner> idle_priority_task_runner, 15 scoped_refptr<base::SingleThreadTaskRunner> idle_priority_task_runner,
16 Delegate* delegate) 16 Delegate* delegate)
17 : idle_priority_task_runner_(idle_priority_task_runner), 17 : idle_priority_task_runner_(idle_priority_task_runner),
18 delegate_(delegate), 18 delegate_(delegate),
19 blame_context_(nullptr), 19 blame_context_(nullptr),
20 weak_factory_(this) { 20 weak_factory_(this) {
21 DCHECK(!idle_priority_task_runner_ || 21 DCHECK(!idle_priority_task_runner_ ||
22 idle_priority_task_runner_->RunsTasksOnCurrentThread()); 22 idle_priority_task_runner_->RunsTasksInCurrentSequence());
23 weak_scheduler_ptr_ = weak_factory_.GetWeakPtr(); 23 weak_scheduler_ptr_ = weak_factory_.GetWeakPtr();
24 } 24 }
25 25
26 SingleThreadIdleTaskRunner::~SingleThreadIdleTaskRunner() {} 26 SingleThreadIdleTaskRunner::~SingleThreadIdleTaskRunner() {}
27 27
28 SingleThreadIdleTaskRunner::Delegate::Delegate() {} 28 SingleThreadIdleTaskRunner::Delegate::Delegate() {}
29 29
30 SingleThreadIdleTaskRunner::Delegate::~Delegate() {} 30 SingleThreadIdleTaskRunner::Delegate::~Delegate() {}
31 31
32 bool SingleThreadIdleTaskRunner::RunsTasksOnCurrentThread() const { 32 bool SingleThreadIdleTaskRunner::RunsTasksInCurrentSequence() const {
33 return idle_priority_task_runner_->RunsTasksOnCurrentThread(); 33 return idle_priority_task_runner_->RunsTasksInCurrentSequence();
34 } 34 }
35 35
36 void SingleThreadIdleTaskRunner::PostIdleTask( 36 void SingleThreadIdleTaskRunner::PostIdleTask(
37 const tracked_objects::Location& from_here, 37 const tracked_objects::Location& from_here,
38 const IdleTask& idle_task) { 38 const IdleTask& idle_task) {
39 delegate_->OnIdleTaskPosted(); 39 delegate_->OnIdleTaskPosted();
40 idle_priority_task_runner_->PostTask( 40 idle_priority_task_runner_->PostTask(
41 from_here, base::Bind(&SingleThreadIdleTaskRunner::RunTask, 41 from_here, base::Bind(&SingleThreadIdleTaskRunner::RunTask,
42 weak_scheduler_ptr_, idle_task)); 42 weak_scheduler_ptr_, idle_task));
43 } 43 }
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
89 delegate_->DidProcessIdleTask(); 89 delegate_->DidProcessIdleTask();
90 } 90 }
91 91
92 void SingleThreadIdleTaskRunner::SetBlameContext( 92 void SingleThreadIdleTaskRunner::SetBlameContext(
93 base::trace_event::BlameContext* blame_context) { 93 base::trace_event::BlameContext* blame_context) {
94 blame_context_ = blame_context; 94 blame_context_ = blame_context;
95 } 95 }
96 96
97 } // namespace scheduler 97 } // namespace scheduler
98 } // namespace blink 98 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698