diff options
Diffstat (limited to 'source/libs/asura-lib-utils/threading/thread.h')
-rw-r--r-- | source/libs/asura-lib-utils/threading/thread.h | 21 |
1 files changed, 13 insertions, 8 deletions
diff --git a/source/libs/asura-lib-utils/threading/thread.h b/source/libs/asura-lib-utils/threading/thread.h index 24b549c..1bd5f15 100644 --- a/source/libs/asura-lib-utils/threading/thread.h +++ b/source/libs/asura-lib-utils/threading/thread.h @@ -6,7 +6,7 @@ #include <asura-lib-utils/scripting/portable.hpp> -#include "thread_task.h" +#include "task.h" #include "mutex.h" namespace AsuraEngine @@ -26,10 +26,10 @@ namespace AsuraEngine LUAX_DECL_FACTORY(Thread); - Thread(const std::string& name = ""); + Thread(Luax::LuaxState& father, const std::string& name = ""); ~Thread(); - bool AddTask(ThreadTask* task); + bool AddTask(Task* task); void Start(uint32 stacksize = 0); @@ -66,15 +66,20 @@ namespace AsuraEngine LUAX_DECL_METHOD(_IsCurrent); LUAX_DECL_METHOD(_GetName); + ThreadImpl* mImpl; + std::string mName; + /// /// С /// - std::queue<ThreadTask*> mTaskQueue; - - Mutex mMutex; + std::queue<Task*> mTaskQueue; + Mutex mMutex; - ThreadImpl* mImpl; - std::string mName; + /// + /// ̵߳luaִջΪ˱ִջͻ + /// + lua_State* mState; + Luax::LuaxMemberRef mStateRef; }; |