I'm working on a thread pool with a tasking queuing mechanism. I have code that I need someone to look at and help me figure out what I am doing wrong. I need to guarantee that all tasks are completed before program exit. So I'm joining at the end, and synchronously completing any tasks in the queue that are not complete. For some reason I'm locking up at the joins... Here is the code, if anyone could please take a look I'd really appreciate it. Also, just for grins, I'm using Mingw and the windows threadding right now, I'm also going to port this to pthreads on win32 and solaris once I get this working. Thanks in advance... Joel _______________________ <> <>