26 std::weak_ptr<ITaskScheduler> m_scheduler;
27 std::shared_ptr<ITaskScheduler> m_schedulerToHoldWhileStopping;
28 std::shared_ptr<AsyncTask> m_currentRunningTask;
33 std::shared_ptr<ITaskRunner> m_thisPtr;
Contains a UTF-8 encoded string.
Definition: WString.h:275
#define BENTLEYDLL_EXPORT
Definition: Bentley.h:249
virtual bool IsStopping() const =0
Definition: ITaskRunner.h:21
virtual bool IsRunning() const =0
virtual intptr_t GetId() const =0
virtual void Start(std::shared_ptr< ITaskScheduler > scheduler, Utf8CP name=nullptr)=0
static std::shared_ptr< AsyncTaskRunner > Create()
Definition: AsyncTaskRunner.h:45
#define BEGIN_BENTLEY_TASKS_NAMESPACE
Definition: Tasks.h:13
Definition: AsyncTaskRunner.h:20
virtual std::shared_ptr< AsyncTask > GetCurrentRunningTask()=0
Utf8Char const * Utf8CP
Definition: Bentley.h:229
virtual std::shared_ptr< ITaskScheduler > GetTaskScheduler()=0
Provides Bentley specific implementation of the std::atomic template class (Bentley/BeAtomic.h).
#define END_BENTLEY_TASKS_NAMESPACE
Definition: Tasks.h:14
#define EXPORT_VTABLE_ATTRIBUTE
Definition: Bentley.h:67
void SetCurrentRunningTask(std::shared_ptr< AsyncTask > task)
Definition: AsyncTaskRunner.h:40