PTLib  Version 2.18.8
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
PQueuedThreadPool< Work_T >::QueuedWorkerThread Class Reference

#include <threadpool.h>

Inheritance diagram for PQueuedThreadPool< Work_T >::QueuedWorkerThread:
Collaboration diagram for PQueuedThreadPool< Work_T >::QueuedWorkerThread:

Classes

struct  QueuedWork
 

Public Member Functions

 QueuedWorkerThread (PThreadPool< Work_T > &pool, PThread::Priority priority=PThread::NormalPriority, const char *threadName=NULL)
 
 ~QueuedWorkerThread ()
 
void AddWork (Work_T *work, const string &group)
 
void RemoveWork (Work_T *work)
 
unsigned GetWorkSize () const
 
virtual bool Work ()
 
void Shutdown ()
 

Protected Attributes

PSyncQueue< QueuedWorkm_queue
 
atomic< bool > m_working
 

Additional Inherited Members

- Protected Member Functions inherited from PThreadPool< Work_T >::WorkerThread
 WorkerThread (PThreadPool &pool, Priority priority=NormalPriority, const char *threadName=NULL)
 

Constructor & Destructor Documentation

template<class Work_T>
PQueuedThreadPool< Work_T >::QueuedWorkerThread::QueuedWorkerThread ( PThreadPool< Work_T > &  pool,
PThread::Priority  priority = PThread::NormalPriority,
const char *  threadName = NULL 
)
inline
template<class Work_T>
PQueuedThreadPool< Work_T >::QueuedWorkerThread::~QueuedWorkerThread ( )
inline

Member Function Documentation

template<class Work_T>
void PQueuedThreadPool< Work_T >::QueuedWorkerThread::AddWork ( Work_T *  work,
const string &  group 
)
inlinevirtual
template<class Work_T>
unsigned PQueuedThreadPool< Work_T >::QueuedWorkerThread::GetWorkSize ( ) const
inline
template<class Work_T>
void PQueuedThreadPool< Work_T >::QueuedWorkerThread::RemoveWork ( Work_T *  work)
inlinevirtual
template<class Work_T>
void PQueuedThreadPool< Work_T >::QueuedWorkerThread::Shutdown ( )
inline

Member Data Documentation

template<class Work_T>
atomic<bool> PQueuedThreadPool< Work_T >::QueuedWorkerThread::m_working
protected

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