PTLib  Version 2.10.11
PQueuedThreadPool< Work_T >::QueuedWorkerThread Class Reference

#include <threadpool.h>

Inheritance diagram for PQueuedThreadPool< Work_T >::QueuedWorkerThread:
PThreadPool< Work_T >::WorkerThread

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
PThreadPoolm_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)
inlinevirtual

§ GetWorkSize()

template<class Work_T >
unsigned PQueuedThreadPool< Work_T >::QueuedWorkerThread::GetWorkSize ( ) const
inline

§ Main()

template<class Work_T >
void PQueuedThreadPool< Work_T >::QueuedWorkerThread::Main ( )
inlinevirtual

§ RemoveWork()

template<class Work_T >
void PQueuedThreadPool< Work_T >::QueuedWorkerThread::RemoveWork ( Work_T *  )
inlinevirtual

§ 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: