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

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

Issue 922733002: scheduler: Implement task observers (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Missed one. Created 5 years, 10 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 "content/renderer/scheduler/renderer_scheduler_impl.h" 5 #include "content/renderer/scheduler/renderer_scheduler_impl.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/message_loop/message_loop_proxy.h" 8 #include "base/message_loop/message_loop_proxy.h"
9 #include "base/trace_event/trace_event.h" 9 #include "base/trace_event/trace_event.h"
10 #include "base/trace_event/trace_event_argument.h" 10 #include "base/trace_event/trace_event_argument.h"
(...skipping 300 matching lines...) Expand 10 before | Expand all | Expand 10 after
311 renderer_task_queue_selector_->DisableQueue(IDLE_TASK_QUEUE); 311 renderer_task_queue_selector_->DisableQueue(IDLE_TASK_QUEUE);
312 } 312 }
313 313
314 void RendererSchedulerImpl::SetTimeSourceForTesting( 314 void RendererSchedulerImpl::SetTimeSourceForTesting(
315 scoped_refptr<cc::TestNowSource> time_source) { 315 scoped_refptr<cc::TestNowSource> time_source) {
316 DCHECK(main_thread_checker_.CalledOnValidThread()); 316 DCHECK(main_thread_checker_.CalledOnValidThread());
317 time_source_ = time_source; 317 time_source_ = time_source;
318 task_queue_manager_->SetTimeSourceForTesting(time_source); 318 task_queue_manager_->SetTimeSourceForTesting(time_source);
319 } 319 }
320 320
321 void RendererSchedulerImpl::SetWorkBatchSizeForTesting(size_t work_batch_size) {
322 DCHECK(main_thread_checker_.CalledOnValidThread());
323 task_queue_manager_->SetWorkBatchSize(work_batch_size);
324 }
325
321 base::TimeTicks RendererSchedulerImpl::Now() const { 326 base::TimeTicks RendererSchedulerImpl::Now() const {
322 return UNLIKELY(time_source_) ? time_source_->Now() : base::TimeTicks::Now(); 327 return UNLIKELY(time_source_) ? time_source_->Now() : base::TimeTicks::Now();
323 } 328 }
324 329
325 RendererSchedulerImpl::PollableNeedsUpdateFlag::PollableNeedsUpdateFlag( 330 RendererSchedulerImpl::PollableNeedsUpdateFlag::PollableNeedsUpdateFlag(
326 base::Lock* write_lock_) 331 base::Lock* write_lock_)
327 : flag_(false), write_lock_(write_lock_) { 332 : flag_(false), write_lock_(write_lock_) {
328 } 333 }
329 334
330 RendererSchedulerImpl::PollableNeedsUpdateFlag::~PollableNeedsUpdateFlag() { 335 RendererSchedulerImpl::PollableNeedsUpdateFlag::~PollableNeedsUpdateFlag() {
(...skipping 108 matching lines...) Expand 10 before | Expand all | Expand 10 after
439 // With no observable effect, these meta events do not indicate a 444 // With no observable effect, these meta events do not indicate a
440 // meaningful touchstart response and should not impact task priority. 445 // meaningful touchstart response and should not impact task priority.
441 return current_state; 446 return current_state;
442 447
443 default: 448 default:
444 break; 449 break;
445 } 450 }
446 return INPUT_ACTIVE; 451 return INPUT_ACTIVE;
447 } 452 }
448 453
454 void RendererSchedulerImpl::AddTaskObserver(
455 base::MessageLoop::TaskObserver* task_observer) {
456 DCHECK(main_thread_checker_.CalledOnValidThread());
457 task_queue_manager_->AddTaskObserver(task_observer);
458 }
459
460 void RendererSchedulerImpl::RemoveTaskObserver(
461 base::MessageLoop::TaskObserver* task_observer) {
462 DCHECK(main_thread_checker_.CalledOnValidThread());
463 task_queue_manager_->RemoveTaskObserver(task_observer);
464 }
465
449 } // namespace content 466 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698