// Copyright 2015 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef BASE_TASK_SEQUENCE_MANAGER_TASK_QUEUE_SELECTOR_LOGIC_H_ #define BASE_TASK_SEQUENCE_MANAGER_TASK_QUEUE_SELECTOR_LOGIC_H_ namespace base { namespace sequence_manager { namespace internal { // Used to describe the logic trigerred when a task queue is selected to // service. // This enum is used for histograms and should not be renumbered. enum class TaskQueueSelectorLogic { // Selected due to priority rules. kControlPriorityLogic = 0, kHighestPriorityLogic = 1, kHighPriorityLogic = 2, kNormalPriorityLogic = 3, kLowPriorityLogic = 4, kBestEffortPriorityLogic = 5, // Selected due to starvation logic. kHighPriorityStarvationLogic = 6, kNormalPriorityStarvationLogic = 7, kLowPriorityStarvationLogic = 8, kCount = 9, }; } // namespace internal } // namespace sequence_manager } // namespace base #endif // BASE_TASK_SEQUENCE_MANAGER_TASK_QUEUE_SELECTOR_LOGIC_H_