From 3bced067a4144381e59ce4bd0eb749eeff5ad1f4 Mon Sep 17 00:00:00 2001 From: chai Date: Thu, 28 Mar 2019 08:56:15 +0800 Subject: *misc --- source/libs/asura-lib-utils/threading/thread.h | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) (limited to 'source/libs/asura-lib-utils/threading/thread.h') 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 -#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 mTaskQueue; - - Mutex mMutex; + std::queue mTaskQueue; + Mutex mMutex; - ThreadImpl* mImpl; - std::string mName; + /// + /// 此线程的lua执行栈,为了避免和主执行栈冲突 + /// + lua_State* mState; + Luax::LuaxMemberRef mStateRef; }; -- cgit v1.1-26-g67d0