Chromium Code Reviews| Index: base/threading/sequenced_worker_pool.cc |
| diff --git a/base/threading/sequenced_worker_pool.cc b/base/threading/sequenced_worker_pool.cc |
| index 57961b5cd5538306ea00a4b354966e32b20d4e0c..5d5853fafeaf59203f05ca04fb3ff5e3e9c987d7 100644 |
| --- a/base/threading/sequenced_worker_pool.cc |
| +++ b/base/threading/sequenced_worker_pool.cc |
| @@ -292,8 +292,10 @@ class SequencedWorkerPool::Inner { |
| public: |
| // Take a raw pointer to |worker| to avoid cycles (since we're owned |
| // by it). |
| - Inner(SequencedWorkerPool* worker_pool, size_t max_threads, |
| + Inner(SequencedWorkerPool* worker_pool, |
| + size_t max_threads, |
| const std::string& thread_name_prefix, |
| + base::TaskPriority task_priority, |
| TestingObserver* observer); |
| ~Inner(); |
| @@ -497,6 +499,10 @@ class SequencedWorkerPool::Inner { |
| TestingObserver* const testing_observer_; |
| + // The TaskPriority to be used for SequencedWorkerPool tasks redirected to the |
| + // TaskScheduler as an experiment (unused otherwise). |
| + const base::TaskPriority task_priority_; |
| + |
| DISALLOW_COPY_AND_ASSIGN(Inner); |
| }; |
| @@ -552,11 +558,11 @@ LazyInstance<ThreadLocalPointer<SequencedWorkerPool::Worker>>::Leaky |
| // Inner definitions --------------------------------------------------------- |
| -SequencedWorkerPool::Inner::Inner( |
| - SequencedWorkerPool* worker_pool, |
| - size_t max_threads, |
| - const std::string& thread_name_prefix, |
| - TestingObserver* observer) |
| +SequencedWorkerPool::Inner::Inner(SequencedWorkerPool* worker_pool, |
| + size_t max_threads, |
| + const std::string& thread_name_prefix, |
| + base::TaskPriority task_priority, |
| + TestingObserver* observer) |
| : worker_pool_(worker_pool), |
| lock_(), |
| has_work_cv_(&lock_), |
| @@ -574,7 +580,8 @@ SequencedWorkerPool::Inner::Inner( |
| cleanup_state_(CLEANUP_DONE), |
| cleanup_idlers_(0), |
| cleanup_cv_(&lock_), |
| - testing_observer_(observer) {} |
| + testing_observer_(observer), |
| + task_priority_(task_priority) {} |
| SequencedWorkerPool::Inner::~Inner() { |
| // You must call Shutdown() before destroying the pool. |
| @@ -1254,17 +1261,25 @@ SequencedWorkerPool::GetSequencedTaskRunnerForCurrentThread() { |
| } |
| SequencedWorkerPool::SequencedWorkerPool(size_t max_threads, |
| - const std::string& thread_name_prefix) |
| + const std::string& thread_name_prefix, |
| + base::TaskPriority task_priority) |
| : constructor_task_runner_(ThreadTaskRunnerHandle::Get()), |
| - inner_(new Inner(this, max_threads, thread_name_prefix, NULL)) { |
| -} |
| + inner_(new Inner(this, |
|
danakj
2016/06/28 23:30:59
is this git cl formatted?
gab
2016/06/29 18:25:02
Yes.
|
| + max_threads, |
| + thread_name_prefix, |
| + task_priority, |
| + NULL)) {} |
| SequencedWorkerPool::SequencedWorkerPool(size_t max_threads, |
| const std::string& thread_name_prefix, |
| + base::TaskPriority task_priority, |
| TestingObserver* observer) |
| : constructor_task_runner_(ThreadTaskRunnerHandle::Get()), |
| - inner_(new Inner(this, max_threads, thread_name_prefix, observer)) { |
| -} |
| + inner_(new Inner(this, |
| + max_threads, |
| + thread_name_prefix, |
| + task_priority, |
| + observer)) {} |
| SequencedWorkerPool::~SequencedWorkerPool() {} |