#include <taskmanager.h>
Inheritance diagram for TaskManager:
Public Member Functions | |
TaskManager (int iWorkerThreads) | |
virtual | ~TaskManager () |
void | Schedule (ThreadMethod *pkTask) |
void | Lock () |
void | Unlock () |
void | WaitForEvent () |
void | BroadcastEvent () |
void | SetName (const std::string &rstrName) |
Protected Member Functions | |
void | Remove (Thread *pkThread) |
Protected Attributes | |
std::vector< Thread * > | m_vpkThreads |
std::vector< ThreadMethod * > | m_vpkQueue |
unsigned int | m_iMaxThreads |
|
Create manager with worker threads
|
|
Terminate all worker threads and clear queue |
|
Remove terminated thread from worker vector
|
|
Add task
|
|
Lock mutex (will block until lock obtained) |
|
Unlock mutex |
|
Block until event occurs |
|
Broadcast event, wake up all waiting for event |
|
Set mutex name
|
|
Worker threads |
|
Task queue |
|
Max number of active worker threads |