#include "base/task/thread_pool/delayed_task_manager.h"
#include <algorithm>
#include <optional>
#include "base/check.h"
#include "base/feature_list.h"
#include "base/functional/bind.h"
#include "base/task/common/checked_lock.h"
#include "base/task/sequenced_task_runner.h"
#include "base/task/task_features.h"
#include "base/task/task_runner.h"
#include "base/task/thread_pool/task.h"
namespace base {
namespace internal {
DelayedTaskManager::DelayedTask::DelayedTask() = default;
DelayedTaskManager::DelayedTask::DelayedTask(Task task,
PostTaskNowCallback callback)
: … { … }
DelayedTaskManager::DelayedTask::DelayedTask(
DelayedTaskManager::DelayedTask&& other) = default;
DelayedTaskManager::DelayedTask::~DelayedTask() = default;
DelayedTaskManager::DelayedTask& DelayedTaskManager::DelayedTask::operator=(
DelayedTaskManager::DelayedTask&& other) = default;
bool DelayedTaskManager::DelayedTask::operator>(
const DelayedTask& other) const { … }
DelayedTaskManager::DelayedTaskManager(const TickClock* tick_clock)
: … { … }
DelayedTaskManager::~DelayedTaskManager() { … }
void DelayedTaskManager::Start(
scoped_refptr<SequencedTaskRunner> service_thread_task_runner) { … }
void DelayedTaskManager::AddDelayedTask(
Task task,
PostTaskNowCallback post_task_now_callback) { … }
void DelayedTaskManager::ProcessRipeTasks() { … }
std::optional<TimeTicks> DelayedTaskManager::NextScheduledRunTime() const { … }
subtle::DelayPolicy DelayedTaskManager::TopTaskDelayPolicyForTesting() const { … }
void DelayedTaskManager::Shutdown() { … }
std::pair<TimeTicks, subtle::DelayPolicy> DelayedTaskManager::
GetTimeAndDelayPolicyToScheduleProcessRipeTasksLockRequired() { … }
void DelayedTaskManager::ScheduleProcessRipeTasksOnServiceThread() { … }
}
}