11#ifndef INCGUARD_MGL_TASK_THREAD_H_1699019667
12#define INCGUARD_MGL_TASK_THREAD_H_1699019667
15#include <condition_variable>
55 void Process()
noexcept;
60 std::atomic<bool> _shouldExit{
false};
61 Node *_taskNode{
nullptr};
64 std::atomic<bool> _isExecuting{
false};
67 std::condition_variable _condition;
タスクノード
Definition mgl_task_node.h:20
タスクノード並列実行用スレッド
Definition mgl_task_thread.h:44
bool Create() noexcept
スレッドの生成
Definition mgl_task_thread.cc:55
Thread(ThreadListener &listener, uint32_t index) noexcept
コンストラクタ
Definition mgl_task_thread.cc:22
bool Execute(Node *taskNode, ExecuteStage stage) noexcept
タスクノードの実行
Definition mgl_task_thread.cc:82
~Thread() noexcept
デストラクタ
Definition mgl_task_thread.cc:34
スレッドからの通知を受けるためのリスナークラス
Definition mgl_task_thread.h:28
virtual void OnCompleted(uint32_t index, const Node *node) noexcept=0
完了通知
uint8_t ExecuteStage
実行ステージ
Definition mgl_task_defs.h:68