Data Fields

THREADPOOL Struct Reference

A thread pool similar to the thread pool in the UPnP SDK. More...

#include <ThreadPool.h>

Collaboration diagram for THREADPOOL:
Collaboration graph
[legend]

Data Fields

ithread_mutex_t mutex
ithread_cond_t condition
ithread_cond_t start_and_shutdown
int lastJobId
int shutdown
int totalThreads
int busyThreads
int persistentThreads
FreeList jobFreeList
LinkedList lowJobQ
LinkedList medJobQ
LinkedList highJobQ
ThreadPoolJobpersistentJob
ThreadPoolAttr attr
ThreadPoolStats stats

Detailed Description

A thread pool similar to the thread pool in the UPnP SDK.

Allows jobs to be scheduled for running by threads in a thread pool. The thread pool is initialized with a minimum and maximum thread number as well as a max idle time and a jobs per thread ratio. If a worker thread waits the whole max idle time without receiving a job and the thread pool currently has more threads running than the minimum then the worker thread will exit. If when scheduling a job the current job to thread ratio becomes greater than the set ratio and the thread pool currently has less than the maximum threads then a new thread will be created.


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