Definition at line 119 of file TThreadPool.h.
Public Member Functions | |
TThreadPool (size_t threadsCount, bool needDbg=false) | |
~TThreadPool () | |
void | AddThread () |
void | Drain () |
size_t | IdleThreads () const |
void | PushTask (typename TThreadPoolTask< aTask, aParam >::task_t &task, aParam param) |
void | Stop (bool processRemainingJobs=false) |
size_t | SuccessfulTasks () const |
size_t | TasksCount () const |
Private Types | |
typedef TThreadPoolTask< aTask, aParam > | task_t |
typedef std::queue< task_t * > | taskqueue_t |
typedef std::vector< TThread * > | threads_array_t |
Private Member Functions | |
void | DbgLog (const std::string &msg) |
Static Private Member Functions | |
static void * | Executor (void *arg) |
static bool | IsThreadActive (TThread *pThread) |
static void * | JoinHelper (void *arg) |
static void * | Monitor (void *arg) |
Private Attributes | |
TCondition * | fAllTasksDone |
TMutex | fDbgOutputMutex |
size_t | fIdleThreads |
TMutex | fMutex |
TMutex | fMutexAllTasksDone |
bool | fSilent |
volatile bool | fStopped |
size_t | fSuccessfulTasks |
taskqueue_t | fTasks |
size_t | fTasksCount |
TCondition * | fThreadAvailable |
TThread * | fThreadJoinHelper |
TThread * | fThreadMonitor |
TCondition * | fThreadNeeded |
threads_array_t | fThreads |
Additional Inherited Members | |
Protected Member Functions inherited from TNonCopyable | |
TNonCopyable () | |
~TNonCopyable () | |
#include <TThreadPool.h>
|
private |
Definition at line 121 of file TThreadPool.h.
|
private |
Definition at line 122 of file TThreadPool.h.
|
private |
Definition at line 123 of file TThreadPool.h.
|
inline |
Definition at line 126 of file TThreadPool.h.
|
inline |
Definition at line 150 of file TThreadPool.h.
|
inline |
Definition at line 165 of file TThreadPool.h.
|
inlineprivate |
Definition at line 332 of file TThreadPool.h.
|
inline |
Definition at line 215 of file TThreadPool.h.
|
inlinestaticprivate |
Definition at line 252 of file TThreadPool.h.
|
inline |
Definition at line 230 of file TThreadPool.h.
|
inlinestaticprivate |
Definition at line 327 of file TThreadPool.h.
|
inlinestaticprivate |
Definition at line 317 of file TThreadPool.h.
|
inlinestaticprivate |
Definition at line 235 of file TThreadPool.h.
|
inline |
Definition at line 173 of file TThreadPool.h.
|
inline |
Definition at line 188 of file TThreadPool.h.
|
inline |
Definition at line 226 of file TThreadPool.h.
|
inline |
Definition at line 222 of file TThreadPool.h.
|
private |
Definition at line 345 of file TThreadPool.h.
|
private |
Definition at line 353 of file TThreadPool.h.
|
private |
Definition at line 352 of file TThreadPool.h.
|
private |
Definition at line 341 of file TThreadPool.h.
|
private |
Definition at line 344 of file TThreadPool.h.
|
private |
Definition at line 354 of file TThreadPool.h.
|
private |
Definition at line 349 of file TThreadPool.h.
|
private |
Definition at line 350 of file TThreadPool.h.
|
private |
Definition at line 340 of file TThreadPool.h.
|
private |
Definition at line 351 of file TThreadPool.h.
|
private |
Definition at line 343 of file TThreadPool.h.
|
private |
Definition at line 347 of file TThreadPool.h.
|
private |
Definition at line 348 of file TThreadPool.h.
|
private |
Definition at line 342 of file TThreadPool.h.
|
private |
Definition at line 346 of file TThreadPool.h.