PQueuedThreadPool< Work_T >::QueuedWorkerThread Class Reference

`#include <threadpool.h>`

Inheritance diagram for PQueuedThreadPool< Work_T >::QueuedWorkerThread:

## Public Member Functions

| QueuedWorkerThread (PThreadPool< Work_T > &pool, PThread::Priority priority=PThread::NormalPriority)
void | AddWork (Work_T *work)
void | RemoveWork (Work_T *)
unsigned | GetWorkSize () const
void | Main ()
void | Shutdown ()
Public Member Functions inherited from PThreadPool< Work_T >::WorkerThread
| WorkerThread (PThreadPool &pool, Priority priority=NormalPriority)

## Protected Types

typedef std::queue< Work_T * > | Queue

## Protected Attributes

Queue | m_queue
PMutex | m_mutex
PSemaphore | m_available
Protected Attributes inherited from PThreadPool< Work_T >::WorkerThread
PThreadPool & | m_pool

## Member Typedef Documentation

## Queue

template<class Work_T >

typedef std::queue<Work_T *> PQueuedThreadPool< Work_T >::QueuedWorkerThread::Queue

protected

## Constructor & Destructor Documentation

## QueuedWorkerThread()

template<class Work_T >

PQueuedThreadPool< Work_T >::QueuedWorkerThread::QueuedWorkerThread | ( | PThreadPool< Work_T > & | pool,
|  | PThread::Priority | priority = `PThread::NormalPriority`
| ) |  |

inline

## Member Function Documentation

## AddWork()

template<class Work_T >

void PQueuedThreadPool< Work_T >::QueuedWorkerThread::AddWork | ( | Work_T * | work | ) |

inline virtual

Implements PThreadPool< Work_T >::WorkerThread.

## GetWorkSize()

template<class Work_T >

unsigned PQueuedThreadPool< Work_T >::QueuedWorkerThread::GetWorkSize | ( |  | ) | const

inline

## Main()

template<class Work_T >

void PQueuedThreadPool< Work_T >::QueuedWorkerThread::Main | ( |  | ) |

inline virtual

Implements PThreadPool< Work_T >::WorkerThread.

References PThreadPool< Work_T >::RemoveWork().

## RemoveWork()

template<class Work_T >

void PQueuedThreadPool< Work_T >::QueuedWorkerThread::RemoveWork | ( | Work_T * |  | ) |

inline virtual

Implements PThreadPool< Work_T >::WorkerThread.

## Shutdown()

template<class Work_T >

void PQueuedThreadPool< Work_T >::QueuedWorkerThread::Shutdown | ( |  | ) |

inline

## Member Data Documentation

## m_available

template<class Work_T >

PSemaphore PQueuedThreadPool< Work_T >::QueuedWorkerThread::m_available

protected

## m_mutex

template<class Work_T >

PMutex PQueuedThreadPool< Work_T >::QueuedWorkerThread::m_mutex

protected

## m_queue

template<class Work_T >

Queue PQueuedThreadPool< Work_T >::QueuedWorkerThread::m_queue

protected

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

- threadpool.h