diff --git a/src/shared/Threading/Threading.cpp b/src/shared/Threading/Threading.cpp index bde2fb08..96bc84cb 100644 --- a/src/shared/Threading/Threading.cpp +++ b/src/shared/Threading/Threading.cpp @@ -131,7 +131,6 @@ Thread::~Thread() } // initialize Thread's class static member -Thread::ThreadStorage *Thread::m_ThreadStorage = NULL; ThreadPriority Thread::m_TpEnum; bool Thread::start() @@ -142,8 +141,6 @@ bool Thread::start() // incRef before spawing the thread, otherwise Thread::ThreadTask() might call decRef and delete m_task m_task->incReference(); - m_ThreadStorage = new ACE_TSS(); - bool res = (ACE_Thread::spawn(&Thread::ThreadTask, (void*)m_task, THREADFLAG, &m_iThreadId, &m_hThreadHandle) == 0); if (res) @@ -162,8 +159,6 @@ bool Thread::wait() m_iThreadId = 0; m_hThreadHandle = 0; - delete m_ThreadStorage; - m_ThreadStorage = NULL; return (_res == 0); } @@ -178,8 +173,6 @@ void Thread::destroy() m_iThreadId = 0; m_hThreadHandle = 0; - delete m_ThreadStorage; - m_ThreadStorage = NULL; // reference set at ACE_Thread::spawn m_task->decReference(); @@ -199,7 +192,7 @@ ACE_THR_FUNC_RETURN Thread::ThreadTask(void* param) { Runnable* _task = static_cast(param); _task->incReference(); - + _task->run(); // task execution complete, free referecne added at @@ -208,35 +201,6 @@ ACE_THR_FUNC_RETURN Thread::ThreadTask(void* param) return (ACE_THR_FUNC_RETURN)0; } -ACE_thread_t Thread::currentId() -{ - return ACE_Thread::self(); -} - -ACE_hthread_t Thread::currentHandle() -{ - ACE_hthread_t _handle; - ACE_Thread::self(_handle); - - return _handle; -} - -Thread* Thread::current() -{ - Thread* _thread = (*m_ThreadStorage).ts_object(); - if (!_thread) - { - _thread = new Thread(); - _thread->m_iThreadId = Thread::currentId(); - _thread->m_hThreadHandle = Thread::currentHandle(); - - Thread* _oldValue = (*m_ThreadStorage).ts_object(_thread); - delete _oldValue; - } - - return _thread; -} - void Thread::setPriority(Priority type) { #ifndef __sun__ diff --git a/src/shared/Threading/Threading.h b/src/shared/Threading/Threading.h index aeef3c3d..9933e7f6 100644 --- a/src/shared/Threading/Threading.h +++ b/src/shared/Threading/Threading.h @@ -175,24 +175,6 @@ namespace ACE_Based * @param msecs */ static void Sleep(unsigned long msecs); - /** - * @brief - * - * @return ACE_thread_t - */ - static ACE_thread_t currentId(); - /** - * @brief - * - * @return ACE_hthread_t - */ - static ACE_hthread_t currentHandle(); - /** - * @brief - * - * @return Thread - */ - static Thread* current(); private: /** @@ -225,8 +207,6 @@ namespace ACE_Based * @brief * */ - typedef ACE_TSS ThreadStorage; - static ThreadStorage *m_ThreadStorage; /**< global object - container for Thread class representation of every thread */ static ThreadPriority m_TpEnum; /**< use this object to determine current OS thread priority values mapped to enum Priority{} */ }; }