PTLib  Version 2.10.4
PThreadPool< Work_T > Class Template Reference

Low Level thread pool. More...

#include <threadpool.h>

Inheritance diagram for PThreadPool< Work_T >:
PThreadPoolBase PObject PQueuedThreadPool< Work_T >

List of all members.

Classes

struct  GroupInfo
class  InternalWork
class  WorkerThread

Public Types

typedef std::map< Work_T
*, InternalWork
ExternalToInternalWorkMap_T
typedef std::map< std::string,
GroupInfo
GroupInfoMap_t

Public Member Functions

 PThreadPool (unsigned maxWorkers=10, unsigned maxWorkUnits=0)
bool AddWork (Work_T *work, const char *group=NULL)
bool RemoveWork (Work_T *work, bool removeFromWorker=true)

Public Attributes

ExternalToInternalWorkMap_T m_externalToInternalWorkMap
GroupInfoMap_t m_groupInfoMap

Detailed Description

template<class Work_T>
class PThreadPool< Work_T >

Low Level thread pool.


Member Typedef Documentation

template<class Work_T>
typedef std::map<Work_T *, InternalWork> PThreadPool< Work_T >::ExternalToInternalWorkMap_T
template<class Work_T>
typedef std::map<std::string, GroupInfo> PThreadPool< Work_T >::GroupInfoMap_t

Constructor & Destructor Documentation

template<class Work_T>
PThreadPool< Work_T >::PThreadPool ( unsigned  maxWorkers = 10,
unsigned  maxWorkUnits = 0 
) [inline]

Member Function Documentation

template<class Work_T>
bool PThreadPool< Work_T >::RemoveWork ( Work_T *  work,
bool  removeFromWorker = true 
) [inline]

Member Data Documentation

template<class Work_T>
GroupInfoMap_t PThreadPool< Work_T >::m_groupInfoMap

The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines