| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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 "base/task_scheduler/task_scheduler_impl.h" | 5 #include "base/task_scheduler/task_scheduler_impl.h" |
| 6 | 6 |
| 7 #include <utility> | 7 #include <utility> |
| 8 | 8 |
| 9 #include "base/bind.h" | 9 #include "base/bind.h" |
| 10 #include "base/bind_helpers.h" | 10 #include "base/bind_helpers.h" |
| (...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 45 const tracked_objects::Location& from_here, | 45 const tracked_objects::Location& from_here, |
| 46 const TaskTraits& traits, | 46 const TaskTraits& traits, |
| 47 const Closure& task) { | 47 const Closure& task) { |
| 48 // Post |task| as part of a one-off single-task Sequence. | 48 // Post |task| as part of a one-off single-task Sequence. |
| 49 GetWorkerPoolForTraits(traits)->PostTaskWithSequence( | 49 GetWorkerPoolForTraits(traits)->PostTaskWithSequence( |
| 50 MakeUnique<Task>(from_here, task, traits, TimeDelta()), | 50 MakeUnique<Task>(from_here, task, traits, TimeDelta()), |
| 51 make_scoped_refptr(new Sequence), nullptr); | 51 make_scoped_refptr(new Sequence), nullptr); |
| 52 } | 52 } |
| 53 | 53 |
| 54 scoped_refptr<TaskRunner> TaskSchedulerImpl::CreateTaskRunnerWithTraits( | 54 scoped_refptr<TaskRunner> TaskSchedulerImpl::CreateTaskRunnerWithTraits( |
| 55 const TaskTraits& traits, | 55 const TaskTraits& traits) { |
| 56 ExecutionMode execution_mode) { | 56 return GetWorkerPoolForTraits(traits)->CreateTaskRunnerWithTraits(traits); |
| 57 return GetWorkerPoolForTraits(traits)->CreateTaskRunnerWithTraits( | 57 } |
| 58 traits, execution_mode); | 58 |
| 59 scoped_refptr<SequencedTaskRunner> |
| 60 TaskSchedulerImpl::CreateSequencedTaskRunnerWithTraits( |
| 61 const TaskTraits& traits) { |
| 62 return GetWorkerPoolForTraits(traits)->CreateSequencedTaskRunnerWithTraits( |
| 63 traits); |
| 64 } |
| 65 |
| 66 scoped_refptr<SingleThreadTaskRunner> |
| 67 TaskSchedulerImpl::CreateSingleThreadTaskRunnerWithTraits( |
| 68 const TaskTraits& traits) { |
| 69 return GetWorkerPoolForTraits(traits)->CreateSingleThreadTaskRunnerWithTraits( |
| 70 traits); |
| 59 } | 71 } |
| 60 | 72 |
| 61 std::vector<const HistogramBase*> TaskSchedulerImpl::GetHistograms() const { | 73 std::vector<const HistogramBase*> TaskSchedulerImpl::GetHistograms() const { |
| 62 std::vector<const HistogramBase*> histograms; | 74 std::vector<const HistogramBase*> histograms; |
| 63 for (const auto& worker_pool : worker_pools_) | 75 for (const auto& worker_pool : worker_pools_) |
| 64 worker_pool->GetHistograms(&histograms); | 76 worker_pool->GetHistograms(&histograms); |
| 65 | 77 |
| 66 return histograms; | 78 return histograms; |
| 67 } | 79 } |
| 68 | 80 |
| (...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 165 // in |sequence|. | 177 // in |sequence|. |
| 166 const TaskTraits traits = | 178 const TaskTraits traits = |
| 167 sequence->PeekTaskTraits().WithPriority(sort_key.priority()); | 179 sequence->PeekTaskTraits().WithPriority(sort_key.priority()); |
| 168 | 180 |
| 169 GetWorkerPoolForTraits(traits)->ReEnqueueSequence(std::move(sequence), | 181 GetWorkerPoolForTraits(traits)->ReEnqueueSequence(std::move(sequence), |
| 170 sort_key); | 182 sort_key); |
| 171 } | 183 } |
| 172 | 184 |
| 173 } // namespace internal | 185 } // namespace internal |
| 174 } // namespace base | 186 } // namespace base |
| OLD | NEW |