Index: components/scheduler/base/task_queue_manager.h |
diff --git a/components/scheduler/base/task_queue_manager.h b/components/scheduler/base/task_queue_manager.h |
index 834024b51e2eeedc5c5b0dc3f8bd987d45042929..67a157eddc04c17f785bfb5459e3c236858bc3cb 100644 |
--- a/components/scheduler/base/task_queue_manager.h |
+++ b/components/scheduler/base/task_queue_manager.h |
@@ -34,7 +34,7 @@ class LazyNow; |
class TaskQueueImpl; |
} // namespace internal |
-class NestableSingleThreadTaskRunner; |
+class TaskQueueManagerDelegate; |
// The task queue manager provides N task queues and a selector interface for |
// choosing which task queue to service next. Each task queue consists of two |
@@ -51,14 +51,13 @@ class NestableSingleThreadTaskRunner; |
class SCHEDULER_EXPORT TaskQueueManager |
: public internal::TaskQueueSelector::Observer { |
public: |
- // Create a task queue manager where |main_task_runner| identifies the thread |
+ // Create a task queue manager where |delegate| identifies the thread |
// on which where the tasks are eventually run. Category strings must have |
// application lifetime (statics or literals). They may not include " chars. |
- TaskQueueManager( |
- scoped_refptr<NestableSingleThreadTaskRunner> main_task_runner, |
- const char* tracing_category, |
- const char* disabled_by_default_tracing_category, |
- const char* disabled_by_default_verbose_tracing_category); |
+ TaskQueueManager(scoped_refptr<TaskQueueManagerDelegate> delegate, |
+ const char* tracing_category, |
+ const char* disabled_by_default_tracing_category, |
+ const char* disabled_by_default_verbose_tracing_category); |
~TaskQueueManager() override; |
// Returns the time of the next pending delayed task in any queue. Ignores |
@@ -78,8 +77,6 @@ class SCHEDULER_EXPORT TaskQueueManager |
void AddTaskObserver(base::MessageLoop::TaskObserver* task_observer); |
void RemoveTaskObserver(base::MessageLoop::TaskObserver* task_observer); |
- void SetTimeSourceForTesting(scoped_ptr<base::TickClock> time_source); |
- |
// Returns true if any task from a monitored task queue was was run since the |
// last call to GetAndClearSystemIsQuiescentBit. |
bool GetAndClearSystemIsQuiescentBit(); |
@@ -103,6 +100,9 @@ class SCHEDULER_EXPORT TaskQueueManager |
// Note |observer| is expected to outlive the SchedulerHelper. |
void SetObserver(Observer* observer); |
+ // Returns the TickClock used by the TaskQueueManager. |
+ base::TickClock* tick_clock() const; |
+ |
private: |
friend class internal::LazyNow; |
friend class internal::TaskQueueImpl; |
@@ -160,15 +160,10 @@ class SCHEDULER_EXPORT TaskQueueManager |
internal::TaskQueueImpl::Task* out_previous_task); |
bool RunsTasksOnCurrentThread() const; |
- bool PostDelayedTask(const tracked_objects::Location& from_here, |
- const base::Closure& task, |
- base::TimeDelta delay); |
bool PostNonNestableDelayedTask(const tracked_objects::Location& from_here, |
const base::Closure& task, |
base::TimeDelta delay); |
- base::TimeTicks Now() const; |
- |
int GetNextSequenceNumber(); |
scoped_refptr<base::trace_event::ConvertableToTraceFormat> |
@@ -228,7 +223,7 @@ class SCHEDULER_EXPORT TaskQueueManager |
base::debug::TaskAnnotator task_annotator_; |
base::ThreadChecker main_thread_checker_; |
- scoped_refptr<NestableSingleThreadTaskRunner> main_task_runner_; |
+ scoped_refptr<TaskQueueManagerDelegate> delegate_; |
internal::TaskQueueSelector selector_; |
base::Closure do_work_from_main_thread_closure_; |
@@ -243,8 +238,6 @@ class SCHEDULER_EXPORT TaskQueueManager |
int work_batch_size_; |
- scoped_ptr<base::TickClock> time_source_; |
- |
base::ObserverList<base::MessageLoop::TaskObserver> task_observers_; |
const char* tracing_category_; |