Hi Sohail,

Does Boost have any thread-pooling classes? I'm thinking something that
allows you to weight tasks perhaps by expected computational time or

It's  possible with threadpool.sf.net:
If you are satisfied with statically weighted tasks you could use prioritized tasks (boost::threadpool::prio_task_func). Otherwise you have to write your own scheduler which updates the weights / priorities of your tasks. Writing a scheduler is fairly simple. Please take a look at the default task schedulers.

Best regards,
Philipp