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

Unified Diff: base/task_scheduler/scheduler_single_thread_task_runner_manager.h

Issue 2749303002: [reference - do not submit] Always create four pools in TaskSchedulerImpl. (Closed)
Patch Set: rebase Created 3 years, 9 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
« no previous file with comments | « no previous file | base/task_scheduler/scheduler_single_thread_task_runner_manager.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: base/task_scheduler/scheduler_single_thread_task_runner_manager.h
diff --git a/base/task_scheduler/scheduler_single_thread_task_runner_manager.h b/base/task_scheduler/scheduler_single_thread_task_runner_manager.h
index 6fbad4bb1d0e7ef5a64a843a65c4118c48899b63..cf03165b64ac91bb19b65dfc34dc72f4af242614 100644
--- a/base/task_scheduler/scheduler_single_thread_task_runner_manager.h
+++ b/base/task_scheduler/scheduler_single_thread_task_runner_manager.h
@@ -5,6 +5,7 @@
#ifndef BASE_TASK_SCHEDULER_SCHEDULER_SINGLE_THREAD_TASK_RUNNER_MANAGER_H_
#define BASE_TASK_SCHEDULER_SCHEDULER_SINGLE_THREAD_TASK_RUNNER_MANAGER_H_
+#include <string>
#include <vector>
#include "base/atomicops.h"
@@ -13,8 +14,7 @@
#include "base/macros.h"
#include "base/memory/ref_counted.h"
#include "base/task_scheduler/scheduler_lock.h"
-#include "base/task_scheduler/scheduler_worker_pool_params.h"
-#include "base/task_scheduler/task_scheduler.h"
+#include "base/threading/platform_thread.h"
namespace base {
@@ -30,14 +30,17 @@ class TaskTracker;
class BASE_EXPORT SchedulerSingleThreadTaskRunnerManager final {
public:
SchedulerSingleThreadTaskRunnerManager(
- const std::vector<SchedulerWorkerPoolParams>& worker_pool_params_vector,
- const TaskScheduler::WorkerPoolIndexForTraitsCallback&
- worker_pool_index_for_traits_callback,
TaskTracker* task_tracker,
DelayedTaskManager* delayed_task_manager);
~SchedulerSingleThreadTaskRunnerManager();
+ // Create a SingleThreadTaskRunner which runs tasks with |traits| on a
+ // dedicated thread named "TaskScheduler" + |name| + "SingleThread" + index.
+ // |priority_hint| is the preferred thread priority; the actual thread
+ // priority depends on shutdown state and platform capabilities.
scoped_refptr<SingleThreadTaskRunner> CreateSingleThreadTaskRunnerWithTraits(
+ const std::string& name,
+ ThreadPriority priority_hint,
const TaskTraits& traits);
void JoinForTesting();
@@ -46,13 +49,11 @@ class BASE_EXPORT SchedulerSingleThreadTaskRunnerManager final {
class SchedulerSingleThreadTaskRunner;
SchedulerWorker* CreateAndRegisterSchedulerWorker(
- const SchedulerWorkerPoolParams& params);
+ const std::string& name,
+ ThreadPriority priority_hint);
void UnregisterSchedulerWorker(SchedulerWorker* worker);
- const std::vector<SchedulerWorkerPoolParams> worker_pool_params_vector_;
- const TaskScheduler::WorkerPoolIndexForTraitsCallback
- worker_pool_index_for_traits_callback_;
TaskTracker* const task_tracker_;
DelayedTaskManager* const delayed_task_manager_;
« no previous file with comments | « no previous file | base/task_scheduler/scheduler_single_thread_task_runner_manager.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698