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 #ifndef BASE_TASK_SCHEDULER_TASK_SCHEDULER_IMPL_H_ | 5 #ifndef BASE_TASK_SCHEDULER_TASK_SCHEDULER_IMPL_H_ |
6 #define BASE_TASK_SCHEDULER_TASK_SCHEDULER_IMPL_H_ | 6 #define BASE_TASK_SCHEDULER_TASK_SCHEDULER_IMPL_H_ |
7 | 7 |
8 #include <memory> | 8 #include <memory> |
9 #include <vector> | 9 #include <vector> |
10 | 10 |
(...skipping 24 matching lines...) Expand all Loading... |
35 | 35 |
36 namespace internal { | 36 namespace internal { |
37 | 37 |
38 // Default TaskScheduler implementation. This class is thread-safe. | 38 // Default TaskScheduler implementation. This class is thread-safe. |
39 class BASE_EXPORT TaskSchedulerImpl : public TaskScheduler { | 39 class BASE_EXPORT TaskSchedulerImpl : public TaskScheduler { |
40 public: | 40 public: |
41 // Creates and returns an initialized TaskSchedulerImpl. CHECKs on failure. | 41 // Creates and returns an initialized TaskSchedulerImpl. CHECKs on failure. |
42 // |name| is used to label threads and histograms. It should identify the | 42 // |name| is used to label threads and histograms. It should identify the |
43 // component that creates the TaskScheduler. |init_params| contains params to | 43 // component that creates the TaskScheduler. |init_params| contains params to |
44 // initialize worker pools. | 44 // initialize worker pools. |
45 // | |
46 // Note: The names and priority hints in |init_params| are ignored. | |
47 // https://crbug.com/690706 | |
48 static std::unique_ptr<TaskSchedulerImpl> Create( | 45 static std::unique_ptr<TaskSchedulerImpl> Create( |
49 StringPiece name, | 46 StringPiece name, |
50 const TaskScheduler::InitParams& init_params); | 47 const TaskScheduler::InitParams& init_params); |
51 | 48 |
52 ~TaskSchedulerImpl() override; | 49 ~TaskSchedulerImpl() override; |
53 | 50 |
54 // TaskScheduler: | 51 // TaskScheduler: |
55 void PostDelayedTaskWithTraits(const tracked_objects::Location& from_here, | 52 void PostDelayedTaskWithTraits(const tracked_objects::Location& from_here, |
56 const TaskTraits& traits, | 53 const TaskTraits& traits, |
57 OnceClosure task, | 54 OnceClosure task, |
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
105 AtomicFlag join_for_testing_returned_; | 102 AtomicFlag join_for_testing_returned_; |
106 #endif | 103 #endif |
107 | 104 |
108 DISALLOW_COPY_AND_ASSIGN(TaskSchedulerImpl); | 105 DISALLOW_COPY_AND_ASSIGN(TaskSchedulerImpl); |
109 }; | 106 }; |
110 | 107 |
111 } // namespace internal | 108 } // namespace internal |
112 } // namespace base | 109 } // namespace base |
113 | 110 |
114 #endif // BASE_TASK_SCHEDULER_TASK_SCHEDULER_IMPL_H_ | 111 #endif // BASE_TASK_SCHEDULER_TASK_SCHEDULER_IMPL_H_ |
OLD | NEW |