3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/deps/core/container/MovePriorityQueue.h"
7#include "mc/deps/core/threading/BackgroundTaskBase.h"
8#include "mc/deps/core/threading/ITaskExecutionContext.h"
9#include "mc/deps/core/threading/SPSCQueue.h"
15namespace Bedrock::Threading {
class OSThreadPriority; }
21 enum class RunOneResult :
int {
27 enum class State :
int {
66 virtual bool isAsync()
const ;
69 virtual bool canTaskRunAgain()
const ;
79 ::std::optional<uint64> coreAffinity,
80 ::std::optional<int> idealCore,
82 bool suppressProfiling
91 MCNAPI
void queue(::std::shared_ptr<::BackgroundTaskBase> task);
109 ::std::optional<uint64> coreAffinity,
110 ::std::optional<int> idealCore,
112 bool suppressProfiling
Definition BackgroundTaskBase.h:15
Definition BackgroundWorker.h:18
MCAPI::BackgroundWorker::RunOneResult _runOneTask()
MCAPI bool $isAsync() const
MCAPI bool _processNextTask()
MCAPI bool $canTaskRunAgain() const
static MCAPI ::BackgroundWorker *& gLocalWorkerMappingSingleton()
MCAPI void queue(::std::shared_ptr<::BackgroundTaskBase > task)
MCAPI BackgroundWorker(::std::string name, bool async, ::Bedrock::Threading::OSThreadPriority const &priority, ::std::optional< uint64 > coreAffinity, ::std::optional< int > idealCore, ::WorkerPool &workerPool, bool suppressProfiling)
static MCAPI void ** $vftable()
MCAPI void * $ctor(::std::string name, bool async, ::Bedrock::Threading::OSThreadPriority const &priority, ::std::optional< uint64 > coreAffinity, ::std::optional< int > idealCore, ::WorkerPool &workerPool, bool suppressProfiling)
MCAPI void _doNoWorkDelay()
Definition OSThreadPriority.h:7
Definition ITaskExecutionContext.h:5
Definition WorkerPool.h:19