Index: base/task_scheduler/scheduler_worker_pool_impl.h |
diff --git a/base/task_scheduler/scheduler_worker_pool_impl.h b/base/task_scheduler/scheduler_worker_pool_impl.h |
index a621f797a53473b2096170a07689e456d5c3f2de..6ce3f1b4c569a1827755f9dfead17e9c61f60c7f 100644 |
--- a/base/task_scheduler/scheduler_worker_pool_impl.h |
+++ b/base/task_scheduler/scheduler_worker_pool_impl.h |
@@ -39,7 +39,6 @@ class TimeDelta; |
namespace internal { |
-class DelayedTaskManager; |
class TaskTracker; |
// A pool of workers that run Tasks. This class is thread-safe. |
@@ -57,14 +56,14 @@ class BASE_EXPORT SchedulerWorkerPoolImpl : public SchedulerWorkerPool { |
// Creates a SchedulerWorkerPoolImpl following the |worker_pool_params| |
// specification. |re_enqueue_sequence_callback| will be invoked after a |
// worker of this worker pool tries to run a Task. |task_tracker| is used to |
- // handle shutdown behavior of Tasks. |delayed_task_manager| handles Tasks |
- // posted with a delay. Returns nullptr on failure to create a worker pool |
- // with at least one thread. |
+ // handle shutdown behavior of Tasks. |service_thread_task_runner| handles |
+ // Tasks posted with a delay. Returns nullptr on failure to create a worker |
+ // pool with at least one thread. |
static std::unique_ptr<SchedulerWorkerPoolImpl> Create( |
const SchedulerWorkerPoolParams& params, |
const ReEnqueueSequenceCallback& re_enqueue_sequence_callback, |
TaskTracker* task_tracker, |
- DelayedTaskManager* delayed_task_manager); |
+ scoped_refptr<TaskRunner> service_thread_task_runner); |
// Waits until all workers are idle. |
void WaitForAllWorkersIdleForTesting(); |
@@ -89,7 +88,8 @@ class BASE_EXPORT SchedulerWorkerPoolImpl : public SchedulerWorkerPool { |
const SequenceSortKey& sequence_sort_key) override; |
bool PostTaskWithSequence(std::unique_ptr<Task> task, |
scoped_refptr<Sequence> sequence, |
- SchedulerWorker* worker) override; |
+ SchedulerWorker* worker, |
+ TimeDelta delay) override; |
void PostTaskWithSequenceNow(std::unique_ptr<Task> task, |
scoped_refptr<Sequence> sequence, |
SchedulerWorker* worker) override; |
@@ -102,12 +102,12 @@ class BASE_EXPORT SchedulerWorkerPoolImpl : public SchedulerWorkerPool { |
class SchedulerSingleThreadTaskRunner; |
class SchedulerWorkerDelegateImpl; |
- SchedulerWorkerPoolImpl(StringPiece name, |
- SchedulerWorkerPoolParams::IORestriction |
- io_restriction, |
- const TimeDelta& suggested_reclaim_time, |
- TaskTracker* task_tracker, |
- DelayedTaskManager* delayed_task_manager); |
+ SchedulerWorkerPoolImpl( |
+ StringPiece name, |
+ SchedulerWorkerPoolParams::IORestriction io_restriction, |
+ const TimeDelta& suggested_reclaim_time, |
+ TaskTracker* task_tracker, |
+ scoped_refptr<TaskRunner> service_thread_task_runner); |
bool Initialize( |
ThreadPriority priority_hint, |
@@ -194,7 +194,7 @@ class BASE_EXPORT SchedulerWorkerPoolImpl : public SchedulerWorkerPool { |
{}; |
TaskTracker* const task_tracker_; |
- DelayedTaskManager* const delayed_task_manager_; |
+ const scoped_refptr<TaskRunner> service_thread_task_runner_; |
DISALLOW_COPY_AND_ASSIGN(SchedulerWorkerPoolImpl); |
}; |