| OLD | NEW |
| 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 318 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 329 renderer_task_queue_selector_->DisableQueue(IDLE_TASK_QUEUE); | 329 renderer_task_queue_selector_->DisableQueue(IDLE_TASK_QUEUE); |
| 330 } | 330 } |
| 331 | 331 |
| 332 void RendererSchedulerImpl::SetTimeSourceForTesting( | 332 void RendererSchedulerImpl::SetTimeSourceForTesting( |
| 333 scoped_refptr<cc::TestNowSource> time_source) { | 333 scoped_refptr<cc::TestNowSource> time_source) { |
| 334 DCHECK(main_thread_checker_.CalledOnValidThread()); | 334 DCHECK(main_thread_checker_.CalledOnValidThread()); |
| 335 time_source_ = time_source; | 335 time_source_ = time_source; |
| 336 task_queue_manager_->SetTimeSourceForTesting(time_source); | 336 task_queue_manager_->SetTimeSourceForTesting(time_source); |
| 337 } | 337 } |
| 338 | 338 |
| 339 void RendererSchedulerImpl::SetWorkBatchSizeForTesting(size_t work_batch_size) { |
| 340 DCHECK(main_thread_checker_.CalledOnValidThread()); |
| 341 task_queue_manager_->SetWorkBatchSize(work_batch_size); |
| 342 } |
| 343 |
| 339 base::TimeTicks RendererSchedulerImpl::Now() const { | 344 base::TimeTicks RendererSchedulerImpl::Now() const { |
| 340 return UNLIKELY(time_source_) ? time_source_->Now() : base::TimeTicks::Now(); | 345 return UNLIKELY(time_source_) ? time_source_->Now() : base::TimeTicks::Now(); |
| 341 } | 346 } |
| 342 | 347 |
| 343 RendererSchedulerImpl::PollableNeedsUpdateFlag::PollableNeedsUpdateFlag( | 348 RendererSchedulerImpl::PollableNeedsUpdateFlag::PollableNeedsUpdateFlag( |
| 344 base::Lock* write_lock_) | 349 base::Lock* write_lock_) |
| 345 : flag_(false), write_lock_(write_lock_) { | 350 : flag_(false), write_lock_(write_lock_) { |
| 346 } | 351 } |
| 347 | 352 |
| 348 RendererSchedulerImpl::PollableNeedsUpdateFlag::~PollableNeedsUpdateFlag() { | 353 RendererSchedulerImpl::PollableNeedsUpdateFlag::~PollableNeedsUpdateFlag() { |
| (...skipping 108 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 457 // With no observable effect, these meta events do not indicate a | 462 // With no observable effect, these meta events do not indicate a |
| 458 // meaningful touchstart response and should not impact task priority. | 463 // meaningful touchstart response and should not impact task priority. |
| 459 return current_state; | 464 return current_state; |
| 460 | 465 |
| 461 default: | 466 default: |
| 462 break; | 467 break; |
| 463 } | 468 } |
| 464 return INPUT_ACTIVE; | 469 return INPUT_ACTIVE; |
| 465 } | 470 } |
| 466 | 471 |
| 472 void RendererSchedulerImpl::AddTaskObserver( |
| 473 base::MessageLoop::TaskObserver* task_observer) { |
| 474 DCHECK(main_thread_checker_.CalledOnValidThread()); |
| 475 if (task_queue_manager_) |
| 476 task_queue_manager_->AddTaskObserver(task_observer); |
| 477 } |
| 478 |
| 479 void RendererSchedulerImpl::RemoveTaskObserver( |
| 480 base::MessageLoop::TaskObserver* task_observer) { |
| 481 DCHECK(main_thread_checker_.CalledOnValidThread()); |
| 482 if (task_queue_manager_) |
| 483 task_queue_manager_->RemoveTaskObserver(task_observer); |
| 484 } |
| 485 |
| 467 } // namespace content | 486 } // namespace content |
| OLD | NEW |