#include "base/task/thread_pool.h"
#include "base/check.h"
#include "base/task/scoped_set_task_priority_for_current_thread.h"
#include "base/task/task_traits.h"
#include "base/task/thread_pool/thread_pool_impl.h"
#include "base/task/thread_pool/thread_pool_instance.h"
#include "base/threading/post_task_and_reply_impl.h"
#include "build/build_config.h"
namespace base {
namespace {
internal::ThreadPoolImpl* GetThreadPoolImpl() { … }
}
bool ThreadPool::PostTask(const Location& from_here, OnceClosure task) { … }
bool ThreadPool::PostDelayedTask(const Location& from_here,
OnceClosure task,
TimeDelta delay) { … }
bool ThreadPool::PostTaskAndReply(const Location& from_here,
OnceClosure task,
OnceClosure reply) { … }
bool ThreadPool::PostTask(const Location& from_here,
const TaskTraits& traits,
OnceClosure task) { … }
bool ThreadPool::PostDelayedTask(const Location& from_here,
const TaskTraits& traits,
OnceClosure task,
TimeDelta delay) { … }
bool ThreadPool::PostTaskAndReply(const Location& from_here,
const TaskTraits& traits,
OnceClosure task,
OnceClosure reply) { … }
scoped_refptr<TaskRunner> ThreadPool::CreateTaskRunner(
const TaskTraits& traits) { … }
scoped_refptr<SequencedTaskRunner> ThreadPool::CreateSequencedTaskRunner(
const TaskTraits& traits) { … }
scoped_refptr<UpdateableSequencedTaskRunner>
ThreadPool::CreateUpdateableSequencedTaskRunner(const TaskTraits& traits) { … }
scoped_refptr<SingleThreadTaskRunner> ThreadPool::CreateSingleThreadTaskRunner(
const TaskTraits& traits,
SingleThreadTaskRunnerThreadMode thread_mode) { … }
#if BUILDFLAG(IS_WIN)
scoped_refptr<SingleThreadTaskRunner> ThreadPool::CreateCOMSTATaskRunner(
const TaskTraits& traits,
SingleThreadTaskRunnerThreadMode thread_mode) {
return GetThreadPoolImpl()->CreateCOMSTATaskRunner(traits, thread_mode);
}
#endif
}