Chromium Code Reviews| OLD | NEW |
|---|---|
| (Empty) | |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | |
| 2 // Use of this source code is governed by a BSD-style license that can be | |
| 3 // found in the LICENSE file. | |
| 4 | |
| 5 #ifndef CONTENT_RENDERER_SCHEDULER_TASK_QUEUE_SCHEDULER_H_ | |
| 6 #define CONTENT_RENDERER_SCHEDULER_TASK_QUEUE_SCHEDULER_H_ | |
| 7 | |
| 8 #include "content/renderer/scheduler/task_queue_manager.h" | |
| 9 | |
| 10 namespace content { | |
| 11 | |
| 12 class TaskQueueScheduler { | |
| 13 public: | |
| 14 virtual ~TaskQueueScheduler() {} | |
| 15 | |
| 16 // Called once to register the work queues to be scheduled. This function is | |
| 17 // called on the main thread. | |
| 18 virtual void SetWorkQueues( | |
|
alexclarke
2014/10/13 10:06:23
We need a way for the scheduler to query the seque
Sami
2014/10/13 18:16:21
Looks like we can get away with just exposing the
| |
| 19 const std::vector<const base::TaskQueue*>& work_queues) = 0; | |
| 20 | |
| 21 // A new task was placed in the incoming task queue |queue|. This function is | |
| 22 // called on the posting thread. | |
| 23 virtual void DidQueueTask(TaskQueueManager::QueueId queue) = 0; | |
|
alexclarke
2014/10/13 10:06:23
Could we get a function to turn these notification
Sami
2014/10/13 18:16:21
Notifications are gone now.
| |
| 24 | |
| 25 // Called to confirm that the given work queue |queue| should be reloaded as | |
| 26 // it has become empty. Return true to allow the work queue to be reloaded or | |
| 27 // false to keep the work queue empty. | |
| 28 // | |
| 29 // This function is called on the main thread. | |
| 30 virtual bool ShouldReloadWorkQueue(TaskQueueManager::QueueId queue) = 0; | |
|
alexclarke
2014/10/13 10:06:23
I'm surprised the scheduler needs to be aware of t
Sami
2014/10/13 18:16:21
Also gone.
| |
| 31 | |
| 32 // Called to choose the work queue from which the next task should be taken | |
| 33 // and run. Return true if |out_queue| indicates the queue to service or | |
| 34 // false to avoid running any tasks. | |
| 35 // | |
| 36 // This function is called on the main thread. | |
| 37 virtual bool ChooseWorkQueueToService( | |
| 38 TaskQueueManager::QueueId* out_queue) = 0; | |
| 39 }; | |
| 40 | |
| 41 } // namespace content | |
| 42 | |
| 43 #endif // CONTENT_RENDERER_SCHEDULER_TASK_QUEUE_SCHEDULER_H_ | |
| OLD | NEW |