39 #if defined(ENABLE_LINUX_BINDING) || defined(ENABLE_OSX_BINDING) 41 #elif defined(ENABLE_WIN32_BINDING) 42 #if defined(USE_WINDOWS_H) 50 class TThreadMessageQueue;
51 class TCriticalSection;
52 class ISynchronizeObject;
84 static void sleep(
const Float& rfDelay);
86 virtual void kill(
Float64 dTimeOut=0);
87 virtual bool isAlive()
const;
88 virtual bool isDead()
const;
89 virtual void resume();
90 virtual bool signalizeStop(
Float64 dTimeOut=5.0);
92 virtual void suspend();
95 bool bWaitForCompletion);
111 virtual void execute();
116 void terminate_internal();
117 void release_internal();
135 #if defined(ENABLE_LINUX_BINDING) || defined(ENABLE_OSX_BINDING) 139 static void* createThread(
void* pLife);
140 #elif defined(ENABLE_WIN32_BINDING) 143 static Uint32 __stdcall createThread(
void* pLife);
145 #if _WIN32_WINNT >= 0x0400 146 static void CALLBACK doUserAPCProc(DWORD dwParam);
157 inline bool TThread::isAlive()
const 169 inline bool TThread::isDead()
const 171 return (m_bTerminated || !m_bCreated);
180 return m_bInterrupted;
TThreadMessageQueue & m_rQueue
Message queue of the thread.
Definition: Thread.h:108
Definition: IThread.hpp:47
bool m_bInterrupted
Flag to check if the thread should terminate.
Definition: Thread.h:106
virtual void onStarted()
Definition: Thread.h:113
Definition: ISynchronizeObject.hpp:48
Definition: IRunnable.hpp:48
Definition: ThreadMessageQueue.h:49
EPriority
Definition: Thread.h:68
unsigned long Uint32
Definition: PlatformDefines.hpp:241
Definition: CriticalSection.h:52
virtual void onTerminated()
Definition: Thread.h:112
double Float64
Definition: PlatformDefines.hpp:274
#define MEMORY_MANAGER_DECL
Definition: IZUnknownImplHelper.hpp:44