Eric Woodruff said: > William, > > I'm not sure. I haven't been following the development branch, and don't > know exactly how to access it.
$> cvs co -r thread_development boost would check out the thread_development branch. Tweak as needed for your environment. > I called this class a function queue > based on what I saw of the currently released boost::thread::thread_pool > which was merely a collection of various threads that provided a grouped > join. I think you're talking about boost::thread::thread_group here. The boost::thread::thread_pool in the thread_development branch sounds like your "function queue", unless I'm misunderstanding something from your short description. > I needed to be abstracted from the thread itself. Thus, thread was > not a good choice in the class's name. I'm not sure I follow this, but here's a short example of using a thread_pool. int min_threads=3; int max_threads=10; int timeout=10; // seconds boost::thread_pool pool(max_threads, min_threads, timeout); pool.add(some_function_object); pool.add(some_function_object); pool.add(some_function_object); pool.add(some_function_object); pool.add(some_function_object); The number of threads that will be used to dispatch the queued function objects will expand and contract between min_threads and max_threads, with idle threads waiting for the specified timeout before terminating if there are more than min_threads available. The user never directly accesses a thread in a thread_pool. He only adds function objects to a queue on which the pooled threads will work. -- William E. Kempf _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost