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

Unified Diff: base/task_scheduler/scheduler_worker_pool_impl.cc

Issue 2068853002: Rename SchedulerThreadPool* to SchedulerWorkerPool* (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@rename1
Patch Set: CR Feedback fdoray@ Created 4 years, 6 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 side-by-side diff with in-line comments
Download patch
Index: base/task_scheduler/scheduler_worker_pool_impl.cc
diff --git a/base/task_scheduler/scheduler_thread_pool_impl.cc b/base/task_scheduler/scheduler_worker_pool_impl.cc
similarity index 85%
rename from base/task_scheduler/scheduler_thread_pool_impl.cc
rename to base/task_scheduler/scheduler_worker_pool_impl.cc
index c7e339a0dd68855a238f7260358449dc75571b28..e2cc7aa718523cad5dd96279174215c317b6a28f 100644
--- a/base/task_scheduler/scheduler_thread_pool_impl.cc
+++ b/base/task_scheduler/scheduler_worker_pool_impl.cc
@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#include "base/task_scheduler/scheduler_thread_pool_impl.h"
+#include "base/task_scheduler/scheduler_worker_pool_impl.h"
#include <stddef.h>
@@ -27,9 +27,9 @@ namespace internal {
namespace {
-// SchedulerThreadPool that owns the current thread, if any.
-LazyInstance<ThreadLocalPointer<const SchedulerThreadPool>>::Leaky
- tls_current_thread_pool = LAZY_INSTANCE_INITIALIZER;
+// SchedulerWorkerPool that owns the current thread, if any.
+LazyInstance<ThreadLocalPointer<const SchedulerWorkerPool>>::Leaky
+ tls_current_worker_pool = LAZY_INSTANCE_INITIALIZER;
// SchedulerWorkerThread that owns the current thread, if any.
LazyInstance<ThreadLocalPointer<const SchedulerWorkerThread>>::Leaky
@@ -39,31 +39,31 @@ LazyInstance<ThreadLocalPointer<const SchedulerWorkerThread>>::Leaky
class SchedulerParallelTaskRunner : public TaskRunner {
public:
// Constructs a SchedulerParallelTaskRunner which can be used to post tasks so
- // long as |thread_pool| is alive.
- // TODO(robliao): Find a concrete way to manage |thread_pool|'s memory.
+ // long as |worker_pool| is alive.
+ // TODO(robliao): Find a concrete way to manage |worker_pool|'s memory.
SchedulerParallelTaskRunner(const TaskTraits& traits,
- SchedulerThreadPool* thread_pool)
- : traits_(traits), thread_pool_(thread_pool) {}
+ SchedulerWorkerPool* worker_pool)
+ : traits_(traits), worker_pool_(worker_pool) {}
// TaskRunner:
bool PostDelayedTask(const tracked_objects::Location& from_here,
const Closure& closure,
TimeDelta delay) override {
// Post the task as part of a one-off single-task Sequence.
- return thread_pool_->PostTaskWithSequence(
+ return worker_pool_->PostTaskWithSequence(
WrapUnique(new Task(from_here, closure, traits_, delay)),
make_scoped_refptr(new Sequence), nullptr);
}
bool RunsTasksOnCurrentThread() const override {
- return tls_current_thread_pool.Get().Get() == thread_pool_;
+ return tls_current_worker_pool.Get().Get() == worker_pool_;
}
private:
~SchedulerParallelTaskRunner() override = default;
const TaskTraits traits_;
- SchedulerThreadPool* const thread_pool_;
+ SchedulerWorkerPool* const worker_pool_;
DISALLOW_COPY_AND_ASSIGN(SchedulerParallelTaskRunner);
};
@@ -72,11 +72,11 @@ class SchedulerParallelTaskRunner : public TaskRunner {
class SchedulerSequencedTaskRunner : public SequencedTaskRunner {
public:
// Constructs a SchedulerSequencedTaskRunner which can be used to post tasks
- // so long as |thread_pool| is alive.
- // TODO(robliao): Find a concrete way to manage |thread_pool|'s memory.
+ // so long as |worker_pool| is alive.
+ // TODO(robliao): Find a concrete way to manage |worker_pool|'s memory.
SchedulerSequencedTaskRunner(const TaskTraits& traits,
- SchedulerThreadPool* thread_pool)
- : traits_(traits), thread_pool_(thread_pool) {}
+ SchedulerWorkerPool* worker_pool)
+ : traits_(traits), worker_pool_(worker_pool) {}
// SequencedTaskRunner:
bool PostDelayedTask(const tracked_objects::Location& from_here,
@@ -86,7 +86,7 @@ class SchedulerSequencedTaskRunner : public SequencedTaskRunner {
task->sequenced_task_runner_ref = this;
// Post the task as part of |sequence_|.
- return thread_pool_->PostTaskWithSequence(std::move(task), sequence_,
+ return worker_pool_->PostTaskWithSequence(std::move(task), sequence_,
nullptr);
}
@@ -98,7 +98,7 @@ class SchedulerSequencedTaskRunner : public SequencedTaskRunner {
}
bool RunsTasksOnCurrentThread() const override {
- return tls_current_thread_pool.Get().Get() == thread_pool_;
+ return tls_current_worker_pool.Get().Get() == worker_pool_;
}
private:
@@ -108,7 +108,7 @@ class SchedulerSequencedTaskRunner : public SequencedTaskRunner {
const scoped_refptr<Sequence> sequence_ = new Sequence;
const TaskTraits traits_;
- SchedulerThreadPool* const thread_pool_;
+ SchedulerWorkerPool* const worker_pool_;
DISALLOW_COPY_AND_ASSIGN(SchedulerSequencedTaskRunner);
};
@@ -117,14 +117,14 @@ class SchedulerSequencedTaskRunner : public SequencedTaskRunner {
class SchedulerSingleThreadTaskRunner : public SingleThreadTaskRunner {
public:
// Constructs a SchedulerSingleThreadTaskRunner which can be used to post
- // tasks so long as |thread_pool| and |worker_thread| are alive.
- // TODO(robliao): Find a concrete way to manage the memory of |thread_pool|
+ // tasks so long as |worker_pool| and |worker_thread| are alive.
+ // TODO(robliao): Find a concrete way to manage the memory of |worker_pool|
// and |worker_thread|.
SchedulerSingleThreadTaskRunner(const TaskTraits& traits,
- SchedulerThreadPool* thread_pool,
+ SchedulerWorkerPool* worker_pool,
SchedulerWorkerThread* worker_thread)
: traits_(traits),
- thread_pool_(thread_pool),
+ worker_pool_(worker_pool),
worker_thread_(worker_thread) {}
// SingleThreadTaskRunner:
@@ -135,7 +135,7 @@ class SchedulerSingleThreadTaskRunner : public SingleThreadTaskRunner {
task->single_thread_task_runner_ref = this;
// Post the task to be executed by |worker_thread_| as part of |sequence_|.
- return thread_pool_->PostTaskWithSequence(std::move(task), sequence_,
+ return worker_pool_->PostTaskWithSequence(std::move(task), sequence_,
worker_thread_);
}
@@ -157,7 +157,7 @@ class SchedulerSingleThreadTaskRunner : public SingleThreadTaskRunner {
const scoped_refptr<Sequence> sequence_ = new Sequence;
const TaskTraits traits_;
- SchedulerThreadPool* const thread_pool_;
+ SchedulerWorkerPool* const worker_pool_;
SchedulerWorkerThread* const worker_thread_;
DISALLOW_COPY_AND_ASSIGN(SchedulerSingleThreadTaskRunner);
@@ -177,7 +177,7 @@ bool ContainsWorkerThread(
} // namespace
-class SchedulerThreadPoolImpl::SchedulerWorkerThreadDelegateImpl
+class SchedulerWorkerPoolImpl::SchedulerWorkerThreadDelegateImpl
: public SchedulerWorkerThread::Delegate {
public:
// |outer| owns the worker thread for which this delegate is constructed.
@@ -187,7 +187,7 @@ class SchedulerThreadPoolImpl::SchedulerWorkerThreadDelegateImpl
// single-threaded PriorityQueue's transactions. |index| will be appended to
// this thread's name to uniquely identify it.
SchedulerWorkerThreadDelegateImpl(
- SchedulerThreadPoolImpl* outer,
+ SchedulerWorkerPoolImpl* outer,
const ReEnqueueSequenceCallback& re_enqueue_sequence_callback,
const PriorityQueue* shared_priority_queue,
int index);
@@ -205,7 +205,7 @@ class SchedulerThreadPoolImpl::SchedulerWorkerThreadDelegateImpl
TimeDelta GetSleepTimeout() override;
private:
- SchedulerThreadPoolImpl* outer_;
+ SchedulerWorkerPoolImpl* outer_;
const ReEnqueueSequenceCallback re_enqueue_sequence_callback_;
// Single-threaded PriorityQueue for the worker thread.
@@ -220,14 +220,14 @@ class SchedulerThreadPoolImpl::SchedulerWorkerThreadDelegateImpl
DISALLOW_COPY_AND_ASSIGN(SchedulerWorkerThreadDelegateImpl);
};
-SchedulerThreadPoolImpl::~SchedulerThreadPoolImpl() {
- // SchedulerThreadPool should never be deleted in production unless its
+SchedulerWorkerPoolImpl::~SchedulerWorkerPoolImpl() {
+ // SchedulerWorkerPool should never be deleted in production unless its
// initialization failed.
DCHECK(join_for_testing_returned_.IsSignaled() || worker_threads_.empty());
}
// static
-std::unique_ptr<SchedulerThreadPoolImpl> SchedulerThreadPoolImpl::Create(
+std::unique_ptr<SchedulerWorkerPoolImpl> SchedulerWorkerPoolImpl::Create(
StringPiece name,
ThreadPriority thread_priority,
size_t max_threads,
@@ -235,23 +235,23 @@ std::unique_ptr<SchedulerThreadPoolImpl> SchedulerThreadPoolImpl::Create(
const ReEnqueueSequenceCallback& re_enqueue_sequence_callback,
TaskTracker* task_tracker,
DelayedTaskManager* delayed_task_manager) {
- std::unique_ptr<SchedulerThreadPoolImpl> thread_pool(
- new SchedulerThreadPoolImpl(name, io_restriction, task_tracker,
+ std::unique_ptr<SchedulerWorkerPoolImpl> worker_pool(
+ new SchedulerWorkerPoolImpl(name, io_restriction, task_tracker,
delayed_task_manager));
- if (thread_pool->Initialize(thread_priority, max_threads,
+ if (worker_pool->Initialize(thread_priority, max_threads,
re_enqueue_sequence_callback)) {
- return thread_pool;
+ return worker_pool;
}
return nullptr;
}
-void SchedulerThreadPoolImpl::WaitForAllWorkerThreadsIdleForTesting() {
+void SchedulerWorkerPoolImpl::WaitForAllWorkerWorkersIdleForTesting() {
AutoSchedulerLock auto_lock(idle_worker_threads_stack_lock_);
while (idle_worker_threads_stack_.Size() < worker_threads_.size())
idle_worker_threads_stack_cv_for_testing_->Wait();
}
-void SchedulerThreadPoolImpl::JoinForTesting() {
+void SchedulerWorkerPoolImpl::JoinForTesting() {
for (const auto& worker_thread : worker_threads_)
worker_thread->JoinForTesting();
@@ -259,7 +259,7 @@ void SchedulerThreadPoolImpl::JoinForTesting() {
join_for_testing_returned_.Signal();
}
-scoped_refptr<TaskRunner> SchedulerThreadPoolImpl::CreateTaskRunnerWithTraits(
+scoped_refptr<TaskRunner> SchedulerWorkerPoolImpl::CreateTaskRunnerWithTraits(
const TaskTraits& traits,
ExecutionMode execution_mode) {
switch (execution_mode) {
@@ -290,7 +290,7 @@ scoped_refptr<TaskRunner> SchedulerThreadPoolImpl::CreateTaskRunnerWithTraits(
return nullptr;
}
-void SchedulerThreadPoolImpl::ReEnqueueSequence(
+void SchedulerWorkerPoolImpl::ReEnqueueSequence(
scoped_refptr<Sequence> sequence,
const SequenceSortKey& sequence_sort_key) {
shared_priority_queue_.BeginTransaction()->Push(std::move(sequence),
@@ -304,11 +304,11 @@ void SchedulerThreadPoolImpl::ReEnqueueSequence(
// we did wake up another thread, we would waste resources by having more
// threads trying to get a Sequence from |shared_priority_queue_| than the
// number of Sequences in it.
- if (tls_current_thread_pool.Get().Get() != this)
- WakeUpOneThread();
+ if (tls_current_worker_pool.Get().Get() != this)
+ WakeUpOneWorker();
}
-bool SchedulerThreadPoolImpl::PostTaskWithSequence(
+bool SchedulerWorkerPoolImpl::PostTaskWithSequence(
std::unique_ptr<Task> task,
scoped_refptr<Sequence> sequence,
SchedulerWorkerThread* worker_thread) {
@@ -331,7 +331,7 @@ bool SchedulerThreadPoolImpl::PostTaskWithSequence(
return true;
}
-void SchedulerThreadPoolImpl::PostTaskWithSequenceNow(
+void SchedulerWorkerPoolImpl::PostTaskWithSequenceNow(
std::unique_ptr<Task> task,
scoped_refptr<Sequence> sequence,
SchedulerWorkerThread* worker_thread) {
@@ -344,7 +344,7 @@ void SchedulerThreadPoolImpl::PostTaskWithSequenceNow(
// in the past).
DCHECK_LE(task->delayed_run_time, delayed_task_manager_->Now());
- // Because |worker_thread| belongs to this thread pool, we know that the type
+ // Because |worker_thread| belongs to this worker pool, we know that the type
// of its delegate is SchedulerWorkerThreadDelegateImpl.
PriorityQueue* const priority_queue =
worker_thread
@@ -370,13 +370,13 @@ void SchedulerThreadPoolImpl::PostTaskWithSequenceNow(
if (worker_thread)
worker_thread->WakeUp();
else
- WakeUpOneThread();
+ WakeUpOneWorker();
}
}
-SchedulerThreadPoolImpl::SchedulerWorkerThreadDelegateImpl::
+SchedulerWorkerPoolImpl::SchedulerWorkerThreadDelegateImpl::
SchedulerWorkerThreadDelegateImpl(
- SchedulerThreadPoolImpl* outer,
+ SchedulerWorkerPoolImpl* outer,
const ReEnqueueSequenceCallback& re_enqueue_sequence_callback,
const PriorityQueue* shared_priority_queue,
int index)
@@ -385,10 +385,10 @@ SchedulerThreadPoolImpl::SchedulerWorkerThreadDelegateImpl::
single_threaded_priority_queue_(shared_priority_queue),
index_(index) {}
-SchedulerThreadPoolImpl::SchedulerWorkerThreadDelegateImpl::
+SchedulerWorkerPoolImpl::SchedulerWorkerThreadDelegateImpl::
~SchedulerWorkerThreadDelegateImpl() = default;
-void SchedulerThreadPoolImpl::SchedulerWorkerThreadDelegateImpl::OnMainEntry(
+void SchedulerWorkerPoolImpl::SchedulerWorkerThreadDelegateImpl::OnMainEntry(
SchedulerWorkerThread* worker_thread) {
#if DCHECK_IS_ON()
// Wait for |outer_->threads_created_| to avoid traversing
@@ -401,16 +401,16 @@ void SchedulerThreadPoolImpl::SchedulerWorkerThreadDelegateImpl::OnMainEntry(
StringPrintf("%sWorker%d", outer_->name_.c_str(), index_));
DCHECK(!tls_current_worker_thread.Get().Get());
- DCHECK(!tls_current_thread_pool.Get().Get());
+ DCHECK(!tls_current_worker_pool.Get().Get());
tls_current_worker_thread.Get().Set(worker_thread);
- tls_current_thread_pool.Get().Set(outer_);
+ tls_current_worker_pool.Get().Set(outer_);
ThreadRestrictions::SetIOAllowed(outer_->io_restriction_ ==
IORestriction::ALLOWED);
}
scoped_refptr<Sequence>
-SchedulerThreadPoolImpl::SchedulerWorkerThreadDelegateImpl::GetWork(
+SchedulerWorkerPoolImpl::SchedulerWorkerThreadDelegateImpl::GetWork(
SchedulerWorkerThread* worker_thread) {
DCHECK(ContainsWorkerThread(outer_->worker_threads_, worker_thread));
@@ -433,7 +433,7 @@ SchedulerThreadPoolImpl::SchedulerWorkerThreadDelegateImpl::GetWork(
// |shared_priority_queue_| and ends the Transaction. This can't happen
// if the Transaction of step 1 is still active because because there
// can only be one active Transaction per PriorityQueue at a time.
- // 3. Other thread calls WakeUpOneThread(). No thread is woken up because
+ // 3. Other thread calls WakeUpOneWorker(). No thread is woken up because
// |idle_worker_threads_stack_| is empty.
// 4. This thread adds itself to |idle_worker_threads_stack_| and goes to
// sleep. No thread runs the Sequence inserted in step 2.
@@ -465,7 +465,7 @@ SchedulerThreadPoolImpl::SchedulerWorkerThreadDelegateImpl::GetWork(
return sequence;
}
-void SchedulerThreadPoolImpl::SchedulerWorkerThreadDelegateImpl::
+void SchedulerWorkerPoolImpl::SchedulerWorkerThreadDelegateImpl::
ReEnqueueSequence(scoped_refptr<Sequence> sequence) {
if (last_sequence_is_single_threaded_) {
// A single-threaded Sequence is always re-enqueued in the single-threaded
@@ -480,12 +480,12 @@ void SchedulerThreadPoolImpl::SchedulerWorkerThreadDelegateImpl::
}
}
-TimeDelta SchedulerThreadPoolImpl::SchedulerWorkerThreadDelegateImpl::
+TimeDelta SchedulerWorkerPoolImpl::SchedulerWorkerThreadDelegateImpl::
GetSleepTimeout() {
return TimeDelta::Max();
}
-SchedulerThreadPoolImpl::SchedulerThreadPoolImpl(
+SchedulerWorkerPoolImpl::SchedulerWorkerPoolImpl(
StringPiece name,
IORestriction io_restriction,
TaskTracker* task_tracker,
@@ -507,7 +507,7 @@ SchedulerThreadPoolImpl::SchedulerThreadPoolImpl(
DCHECK(delayed_task_manager_);
}
-bool SchedulerThreadPoolImpl::Initialize(
+bool SchedulerWorkerPoolImpl::Initialize(
ThreadPriority thread_priority,
size_t max_threads,
const ReEnqueueSequenceCallback& re_enqueue_sequence_callback) {
@@ -535,7 +535,7 @@ bool SchedulerThreadPoolImpl::Initialize(
return !worker_threads_.empty();
}
-void SchedulerThreadPoolImpl::WakeUpOneThread() {
+void SchedulerWorkerPoolImpl::WakeUpOneWorker() {
SchedulerWorkerThread* worker_thread;
{
AutoSchedulerLock auto_lock(idle_worker_threads_stack_lock_);
@@ -545,7 +545,7 @@ void SchedulerThreadPoolImpl::WakeUpOneThread() {
worker_thread->WakeUp();
}
-void SchedulerThreadPoolImpl::AddToIdleWorkerThreadsStack(
+void SchedulerWorkerPoolImpl::AddToIdleWorkerThreadsStack(
SchedulerWorkerThread* worker_thread) {
AutoSchedulerLock auto_lock(idle_worker_threads_stack_lock_);
idle_worker_threads_stack_.Push(worker_thread);
@@ -555,7 +555,7 @@ void SchedulerThreadPoolImpl::AddToIdleWorkerThreadsStack(
idle_worker_threads_stack_cv_for_testing_->Broadcast();
}
-void SchedulerThreadPoolImpl::RemoveFromIdleWorkerThreadsStack(
+void SchedulerWorkerPoolImpl::RemoveFromIdleWorkerThreadsStack(
SchedulerWorkerThread* worker_thread) {
AutoSchedulerLock auto_lock(idle_worker_threads_stack_lock_);
idle_worker_threads_stack_.Remove(worker_thread);
« no previous file with comments | « base/task_scheduler/scheduler_worker_pool_impl.h ('k') | base/task_scheduler/scheduler_worker_pool_impl_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698