LeviLamina
Loading...
Searching...
No Matches
TaskGroup Class Reference
Inheritance diagram for TaskGroup:

Classes

class  Thenable

Public Member Functions

virtual ::Bedrock::Threading::Async< void > queue_DEPRECATED (::TaskStartInfo const &startInfo, ::brstd::move_only_function<::TaskResult()> &&task, ::std::function< void()> &&callback)
virtual ::Bedrock::Threading::Async< void > queueSync_DEPRECATED (::TaskStartInfo const &startInfo, ::brstd::move_only_function<::TaskResult()> &&task)
virtual void taskRegister (::std::shared_ptr<::BackgroundTaskBase > task)
virtual void requeueTask (::std::shared_ptr<::BackgroundTaskBase > task, bool queueImmediate)
virtual::TaskGroupState getState () const
virtual void processCoroutines ()
virtual void taskComplete (::gsl::not_null<::BackgroundTaskBase * > task)
virtual bool _workerPoolIsAsync () const
MCAPI TaskGroup (::WorkerPool &workers, ::Scheduler &context, ::std::string name)
MCAPI void _doWorkUntil (::Bedrock::Threading::SharedAsync< void > task, ::std::promise< void > *workStarted)
MCAPI void _forAllTasks (::Bedrock::Threading::UniqueLock<::Bedrock::Threading::Mutex > &lock, ::std::function< void(::std::shared_ptr<::BackgroundTaskBase > const &)> callback)
MCAPI void _queueInternal (::std::shared_ptr<::BackgroundTaskBase > bgtask)
MCAPI_C uint64 count () const
MCAPI void flush (::std::function< void()> waitFn)
MCAPI bool isEmpty () const
MCAPI_C void kick (uint count)
MCAPI_C void resume ()
MCAPI void sync_DEPRECATED_ASK_TOMMO (::std::function< void()> waitFn)
MCAPI void * $ctor (::WorkerPool &workers, ::Scheduler &context, ::std::string name)
MCAPI void $dtor ()
MCAPI ::Bedrock::Threading::Async< void > $queue_DEPRECATED (::TaskStartInfo const &startInfo, ::brstd::move_only_function<::TaskResult()> &&task, ::std::function< void()> &&callback)
MCAPI ::Bedrock::Threading::Async< void > $queueSync_DEPRECATED (::TaskStartInfo const &startInfo, ::brstd::move_only_function<::TaskResult()> &&task)
MCAPI void $taskRegister (::std::shared_ptr<::BackgroundTaskBase > task)
MCAPI void $requeueTask (::std::shared_ptr<::BackgroundTaskBase > task, bool queueImmediate)
MCFOLD::TaskGroupState $getState () const
MCAPI void $processCoroutines ()
MCAPI void $taskComplete (::gsl::not_null<::BackgroundTaskBase * > task)
MCAPI bool $_workerPoolIsAsync () const

Static Public Member Functions

static MCAPI ::IBackgroundTaskOwnergetCurrentTaskGroup ()
static MCAPI void ** $vftable ()

Public Attributes

::ll::TypedStorage< 8, 24, ::Bedrock::NonOwnerPointer<::Scheduler > > mScheduler
::ll::TypedStorage< 8, 24, ::Bedrock::NonOwnerPointer<::WorkerPool > > mWorkers
::ll::TypedStorage< 8, 32, ::std::string > mName
::ll::TypedStorage< 1, 1, bool > mCheckOwnerThread
::ll::TypedStorage< 8, 80, ::Bedrock::Threading::MutexmLock
::ll::TypedStorage< 4, 4, ::std::atomic<::TaskGroupState > > mState
::ll::TypedStorage< 8, 16, ::std::shared_ptr<::BackgroundTaskBase > > mTasks
::ll::TypedStorage< 8, 8, uint64 > mTaskCount
::ll::TypedStorage< 8, 16, ::std::shared_ptr<::BackgroundTaskBase > > mEnumCurr
::ll::TypedStorage< 8, 16, ::std::shared_ptr<::BackgroundTaskBase > > mEnumNext
::ll::TypedStorage< 8, 16, ::Bedrock::Threading::Async< void > > mResumeTaskHandle
::ll::TypedStorage< 8, 80, ::Bedrock::Threading::MutexmResumeTaskMutex

Member Function Documentation

◆ queue_DEPRECATED()

virtual ::Bedrock::Threading::Async< void > TaskGroup::queue_DEPRECATED ( ::TaskStartInfo const & startInfo,
::brstd::move_only_function<::TaskResult()> && task,
::std::function< void()> && callback )
virtual

Implements IBackgroundTaskOwner.

◆ queueSync_DEPRECATED()

virtual ::Bedrock::Threading::Async< void > TaskGroup::queueSync_DEPRECATED ( ::TaskStartInfo const & startInfo,
::brstd::move_only_function<::TaskResult()> && task )
virtual

Implements IBackgroundTaskOwner.

◆ taskRegister()

virtual void TaskGroup::taskRegister ( ::std::shared_ptr<::BackgroundTaskBase > task)
virtual

Implements IBackgroundTaskOwner.

◆ requeueTask()

virtual void TaskGroup::requeueTask ( ::std::shared_ptr<::BackgroundTaskBase > task,
bool queueImmediate )
virtual

Implements IBackgroundTaskOwner.

◆ getState()

virtual::TaskGroupState TaskGroup::getState ( ) const
virtual

Implements IBackgroundTaskOwner.

◆ processCoroutines()

virtual void TaskGroup::processCoroutines ( )
virtual

Implements IBackgroundTaskOwner.

◆ taskComplete()

virtual void TaskGroup::taskComplete ( ::gsl::not_null<::BackgroundTaskBase * > task)
virtual

Implements IBackgroundTaskOwner.

◆ $vftable()

MCAPI void ** TaskGroup::$vftable ( )
static
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

The documentation for this class was generated from the following file: