How can I create a pool of threads for use in my program?

Paul Faccenda

Implement a producer-consumer workqueue model. The pooled consumer (worker) threads take work requests from a synchronized queue and producer threads put items on the queue. If the producer class thread needs to synchronize on completion of the request, the request will need to contain a condition variable that the worker thread signals when the task is completed; otherwise it's just a give-and-go.

This is a simple explanation to a fairly complex problem.

[Anyone have any pointers to existing Thread Pool libraries? -Alex]