Pyrogenesis  trunk
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
Threading::WorkerThread Class Reference

Worker thread: process the taskManager queues until killed. More...

Inheritance diagram for Threading::WorkerThread:
Inheritance graph
[legend]
Collaboration diagram for Threading::WorkerThread:
Collaboration graph
[legend]

Public Member Functions

 WorkerThread (TaskManager::Impl &taskManager)
 
 ~WorkerThread ()
 
void Wake ()
 Wake the worker. More...
 
- Public Member Functions inherited from Threading::Thread
 Thread ()=default
 
 Thread (const Thread &)=delete
 
 Thread (Thread &&)=delete
 
template<typename T , void(T::*)() callable>
void Start (T *object)
 

Protected Member Functions

void RunUntilDeath ()
 
- Protected Member Functions inherited from Threading::Thread
 ~Thread ()
 

Protected Attributes

std::mutex m_Mutex
 
std::condition_variable m_ConditionVariable
 
TaskManager::Implm_TaskManager
 
- Protected Attributes inherited from Threading::Thread
std::thread m_Thread
 
std::atomic< bool > m_Kill = false
 

Additional Inherited Members

- Static Public Member Functions inherited from Threading::Thread
template<typename T , void(T::*)() callable>
static void DoStart (T *object)
 

Detailed Description

Worker thread: process the taskManager queues until killed.

Constructor & Destructor Documentation

◆ WorkerThread()

Threading::WorkerThread::WorkerThread ( TaskManager::Impl taskManager)

◆ ~WorkerThread()

Threading::WorkerThread::~WorkerThread ( )

Member Function Documentation

◆ RunUntilDeath()

void Threading::WorkerThread::RunUntilDeath ( )
protected

◆ Wake()

void Threading::WorkerThread::Wake ( )

Wake the worker.

Member Data Documentation

◆ m_ConditionVariable

std::condition_variable Threading::WorkerThread::m_ConditionVariable
protected

◆ m_Mutex

std::mutex Threading::WorkerThread::m_Mutex
protected

◆ m_TaskManager

TaskManager::Impl& Threading::WorkerThread::m_TaskManager
protected

The documentation for this class was generated from the following file: